Guava Optional support

PodamOptional can use custom factories.

Documentation for Optional and external Strategies

Supports multiple optionals of different types.

Also handy GuavaPodamFactory.
Refactorings of factory and reflection functionality