Fix bug caching + use pushstate to change history