WIP.
Added small example.

Starting to split the internals in proper classes