Lab 9 and 10: Asteroids!

Asteroids is a classic arcade space shooter. For this lab you will use PyGame to construct an Asteroids clone.
At a minimum, a complete Asteroids game should have the following features:
- A player controlled spaceship. The spaceship needs to be able to move forward (W), rotate (A & D), and teleport (S) to a random location on the screen.
- Player controlled weapons. The spaceship needs to be able to fire (Spacebar) at and destroy asteroids.
- "Enemy" asteroids which fly around randomly and destroy the spaceship if they collide.
- Borders that wrap around. If an asteroid or the ship touches one of the sides of the screen it should be teleported to the the opposite side. Velocity and direction should be preserved (objects should keep moving the direction and speed they were before being teleported.)
Bonus 10%
- A score which keeps track of how many asteroids have been destroyed.
- Player lives, start at three and if the player reaches zero lives the game is over.
Lab 9 and Lab 10
For Lab 9, make spaceship motion work. Shooting and actual asteroids are not needed for lab 9.
For Lab 10, complete the asteroids game as described above