#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.
You remarked this before. 

I guess I ran out of inspiration on this one :smile:. Perhaps we should have a nice repository of examples that we can use, ranging from music, movies, pets, cars, etc. Code and also UT should be a bit fun to read :smile: . Anyway, once we agree on the way forward, I can refactor the unit test into something more meaningfull.