First commit of FluentObject and FluentFormContext

Also includes unit tests