Draw particles for thrust

Animate opacity and size
Kill particles when then become invisible
Perform major code cleanup and commenting

Move GUI rendering into gui.c
Change vec2 to use doubles

* Reasoning: We're going to have positions with large magnitudes since
  we're in space and we want them to remain numerically stable
Add vec2f
* Add some vec2f math functions
Change particles to use vec2f
* Reasoning: There is no rendering with GL_DOUBLE on GLES, and since
  we render directly from the position buffer we need to use floats.
Improve particle rendering (base opacity on area)
Change particle animation
* Particles spread out more, move faster, have a larger disk
Begin refactoring rocket to use a rigidbody struct for phsyics
* Replace pos, accel, vel, angle, angle_vel members with rbody
* Change physics to use rbody instead of direct members
Add calculation of linear velocity of points on a rigidbody

Perform physics on rigidbodies instead of on rockets
* Perform angular acceleration during the integration phase
  instead while gathering input (Reasoning: This will make
  more complex physics easier, and also will allow for easier
  swapping of the integrator.)
Make particles emit based on that velocity calculation
Slightly modify some comments in ship.c and vec2.c
Refactor rigidbody code into rigidbody.c

Use rb_apply_force to accelerate the rocket
Add mass and moment of intertia to rigidbody
* Use forces in the integrator instead of accelerations
Add rocket constructor to ship.c
Rename ship.c to rocket.c