Decoupling the default builder and mutator.
Moving the validation to a trait.
Adding a GenericBuilderInterface.
Bug fixing.
Added some more tests.
Merge pull request #44 from GoIntegro/feature/issue-42-the-answer-is

[ISSUE-42] 409 is now handled by default with the magic builder and mutator