Added meteor, added player shield

Meteor
- Floats down (still need to attract it to player)
- Removed from game when it leaves the screen or hits the player
- Affected by player bullets but pass through other meteors

Player
- Added shield
- Shield can be turned on/off
- Shield acts as the player's first life
- Removed when hit by meteor

Updated how game states are handled
- Removed need to hold reference to gameController
- Now only one instance