Lazy-loading, robust pickling

Implemented lazy-loading as default for classes in chained references as well as facilities to lazy-load classes by passing class definitions and arguments to Facade.

Pickle support has been added for instance methods using copy_reg as well as weak references by traversing and resolving weak references in incoming objects.