I'm working on a multiplayer platform fighting game where I do all the calculations with fixed point arithmetic. It's basically using integers and bit shifting them. The reason I looked into doing this was because I had some problems with different computers getting different results for the same float math.
If you want shapes colliding with shapes, circles, points, and lines you could look into SAT (Separating Axis Theorem).
http://www.codezealot.org/archives/55