fps-engine I probably need to come up with a better name if I want all the javascript hipsters to like me