Store PageFactory in Page and not only BEMPage

I moved down the code for storage as suggested and removed the empty constructor override, which gave the typehint for a `BEMPageFactory`, we could keep it to keep warnings by the IDE.

I did not add any tests, because `getPageFactory` is **protected** and `Page` is currently not using it in any way. But do we really need this getter? Because it is protected and not private and can be accessed directly, maybe we should set the page factory to **private**, it shouldn't be modified by any ancestor in any way.

Closes #84