NH-3704

https://nhibernate.jira.com/browse/NH-3704
With unit tests
This feels like a crutch. 
![default](https://cloud.githubusercontent.com/assets/144791/5163440/86dd0124-7430-11e4-99ef-cd0a386172a0.jpg)

Do we need to create a dynamic type which will be decomposed later?