[#3] parsing can now flag more than one Guava's Function DAMethod

also improved identification of apply method implemented from Guava's Function by checking return and parameter type
[#3] fix logging position incorrect when there is no annotation

method printMessage(Kind, String, Element, AnnotationMirror) expects the AnnotationMirror to be non null and assumes the element is annotated with the specified AnnotationMirror, when AnnotationMirror is null, the Element is ignored and location hint is the whole class => when there is no annotation, use printMessage(Kind, String, Element)
[#3] move DAMethod flags computation out of DASourceClass

computation of DAMethod flags mapperMethod and guavaFunctionApply was coded inside DASourceClassImpl builder, making it implicite that DAMethod with such flags could only be DAMethodImpl instances
to be able to display log message at the position of a method with one of those flags, we need these DAMethods to be JavaxDAMethod
  => computation must be external to DASourceClassImpl
  => create abstract Function MapperMethodPresentTest to hold the computation logic based on DAModel interfaces and provide a specific implementation for Javax in JavaxParsingServiceImpl
[#3] add unit test if mapper has both mapperMethod and Guava function