#252 merging reverse mapping with forward mapping.

There is also an error in the `Mapper#reverse` method class.  The check on constant / expression has been fixed.

Also, the order of forward / reverse method is not relevant (as thought before). This is been assured by adding some tests.
It's not directly related to this change, but WDYT about using more "realistic" example domains? In Hibernate, we use all sort of things such as zoo animals, orders, addresses and so on. IMO this makes tests much easier to grasp than having to reason about numbered properties with super-generic names. No need to change it here, but I think we should go for it in the future.