ARQGRA-345: GrapheneElement can not be used as @Root - fixed

* GrapheneElement can be now used as field type for Page Fragment @Root
* It required couple of refactorins: I had to extract interface from
  GrapheneElement, because proxy which is created for it needs that
  interface in the list of interfaces which it should implement
* I had to rename the implementation to GrapheneElementImpl
* GrapheneElement is wrapped element, I had to add to the
  WrapperEnricher conditional code which would take into account the
  GrapheneElement - it is ugly bit imo only only solution right now
ARQGRA-391: introduced SPI annotation @ImplementedBy accompanited by TypeResolver#instantiate(type)
ARQGRA-345: use ImplementedBy on GrapheneElement to determine final implementation
ARQGRA-345: completing docs + renaming tests appropriately
ARQGRA-379: upgrade Drone to 1.2.0.CR2