simple JavaScript  framework with push-state