Make Puzzle 1 Solvable
Don't Compile Keyboard Support

We won't be using it after all.
Clean up Powerable & ConductiveSprite

Cleans up some inconsistent code style & adds a Connectable interface.
Drastically Rework CableSegment

Instead of Cable objects, the game logic works better if we treat cable
segments as being part of a doubly-linked list. First up, we make
CableSegments work without a parent Cable to tend to them.

This change breaks compilation until all related changes are in.
Add Length-Tracking to the All-New CableSegment

Does anyone else think All-New Cable Segment sounds like a rejected
Marvel comic?
Delete Cable Class
Play Music in Puzzle State
Actually Assign a Value to _maxLength
Update PuzzleState to Use New Cable Framework

This restores compilability. Functionality is equivalent to what it was
this afternoon, but we are better set up for what comes next.