|#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. For those AnyVal instances, their companion
object has been removed to avoid extra apply calls even if the java object
stays the same on construction.
* 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.
* Added missing javadoc and corrected where necessary
* Added missing copyright notices
* Separate Vertx into a separate class. This avoids a type erasure
compilation error.