v0.8.1rc1: Removed cached body and documentElement and used them inside the functions instead. This resolved the problem that sometimes the the body element was null. Updated unit tests. Rewrote push collision method and fixed a major bug while I was on it.