added missing methods
more java generic magic
support for link contracts both as singletons and instances