|#98 Convert some to AnyVal, use `asJava` consistently to get Java POJO

* Any wrappers that did not require extending any other traits have been
converted to AnyVal instances.
* Wrap class named to Self indicating that it allows further invocations
on Self, fluent style.
* VertxWrapper converted in AsJava, which is an optional trait that
should be extended by any wrapper traits that require accessing the java
object before this has been concretely instantiated in the wrapper class.
* Removed all Wrapped* classes and just merged them into their
corresponding trait.
* All wrapper classes have been made final and their constructors private.
They can only be instantiated via factory objects.
* Added missing javadoc and corrected where necessary
* Added missing copyright notices
* Separate Vertx into a separate class. This avoids a type erasure
compilation error.