Refitted the Mapper API into Mapper and ComplexMapper interface and added an abstract class SimpleMapper to make it possible to use Lambda in Java 8 since support for AbstractClass SAM types was removed.