physics: use macros to define algorithms, cleanup

I think I'll keep the list populated upon compile time. Seems like the best way, only there is no other way because there's a limit on what you can define globally. I promise I'll make a demo and release it as soon as possible, like within two weeks hopefully(still working out some IRL stuff). I need to figure out how to make a galaxy. I also need people in the chat room. You! Yes, you! Tune in to #physengine on Freenode, now!