Added new node constructs and templates to support code generation of distribution aspects
Added utility class to support distributed code generation
Added functionality to identify the distribution aspect of a VDM-RT models

This involes
- Idenifying the mapping of objects onto CPUs
- Identifying the bus connections between CPUs
Added functionality to generate the Java RMI contracts for remote objects
Added functionality to generate the implementations of the remote objects

This integrates the code produced by the code generator with
the implementation of the remote object
Added initial work on registraion of local and remote objects
Added main program to test the current work on the distributed code generator
Merge remote-tracking branch 'origin/pvj/main' into mha/msc

Conflicts:
	core/codegen/src/main/resources/cg.astv2
Change casting of "lookup" return value from RMI registry

Change the casting of the "lookup" for RMI to be castet to the interface to create the proxy on client-side, and not the class implementation.
Added functionality to save the remote contracts and implementation to files
Functionality to save the deployment of each CPU to a file
Updated method names to more suitable names
Added functionality to get the map which gives cpu to deployed classes
Added functionality to code generate the creation or to get a RMI registry for each CPU
Added the import of the code generation runtime support library to templates

Then VDM types can be send across the network which are supported by the runtime library.
Removed the standard "toString()" method in the code generator from being a remote method in each class
Added syncronization functionality between CPUs in Java RMI
Added so a contructor of a class is not generated inside the interface
Now a class can take parameters by using the code genrated constructor
Now a instance of a class with parameters can be created