fixed projectiles and added config stuff

the projectile issues was caused by a major bug in the collision system
that is now resolved
I added a configure function to the generic projectile that can be used
to configure it with a generic set of values, I think this is a bit more
flexible than just passing the config as an argument