Adds a Loader like mechanism to retain observable over rotation

This PR is for discussion only do not merge :x: 

The aim is to handle references over rotation to ease the
use of observable within the Android Activity/Fragment lifecycle.

The way the Observable are retained is using a VaultObject that can sit at application level or some other generic holder. It uses a Loader like ID based storage to recover observables upon rotation.
all this java boiler plate :cry: