Puzzle functionality

added ability to add pieces and checks if win condition is met. When
conditions are met, fragment decends from the top to middle, plays a
tune, and goes to gameplay.