$location support for pushState

I am using this to good effect in an application now. Let me know if you want to pull and I will write some tests.