fix: fix ajax on ie
feature: add once method to observable and observer
refactor: extract history management from browser
refactor: add the context class that will be shared by the iframe the history and the viewport
test: improve code coverage by testing new classes and few edge cases