Introduce PageApi

* Use it to dynamically load pages instead of M.history.
* Make Page thinner (transformations in API).

Change-Id: I8452b4d3ba1ff7d88dcf7582bdc4d480b4c3a493