Implemented a projectile list system

A list of projectiles needs to be maintained for performance reason. At a
certain range or a collision occurs, the projectile should be removed so
it no longer exists and updated/rendered. This system allows projectiles
to be added and removed form an arraylist.