Changes done for GEB-310 - Support navigating to page instances in addition to classes

Following changes were done:

- Extracted Interfaces for all the support classes.
- Added Uninitialized support implementations for the said interfaces
- Added PageInstanceNotInitializedException class.
We should throw an exception if you are trying to initialize a page instance for the second time, just as GEB-310 states.