Added regions into everything and amended factory

I realised the constructor that factory had included a list of entities
that was to be created...as entities. It made no sense.
Added a method in "ParentObject" called "ReturnObjectID" so that an
object can be asked to retrieve it's ID for anything that may need it.
Regions class is simply a place to hold all the regions that any new
class could have, so that we can copy and paste into any new class we
create.
Added a base constructor for parent role as any time a role is created
it will need to be passed in the lemming it is to control.
Will work on it more tomorrow.