Trying out a different way send parameters to the generator
Made several changes to the way the Geometry class performs the 'generation'.  This will make it more consistent with the other functions this class will now do to the geometry in general.  generate() is now treated just like another geometric manipulation such as translate() or stitch().
- The network setup parameters (params) are now sent as a set of kwargs to the .generate() function rather than to the geometry class.
- The geometry class still receives kwargs, but these will be limited to general things like loglevel
- The network-size-type calculations that occurred in the geometry class's __init__ are now moved (since the network params are not sent to the geometry class directly anymore)...see next item.
- A new step has been added to the generate() method called _generate_setup() which now does all the network-size-type calculations (instead of the __init__)...see above
- All methods related to the generation steps have been made 'private' by prepending an underscore to their name.  This means only methods that actually manipulate geometry of existing networks are 'public' (no underscores).
Minor changes to new Geometry generate scheme
Changed the definition of the _generate_setup() method to declare some default values, as this used to happen in __init__ before.
Merge branch 'feature/AltGenerationScheme' into develop