Refactored the code related to the cascade architecture.

The new architecture now makes use of multiple hidden layers,
where it is now the layers that are connected in a cascading fashion.
This allows multiple hidden neurons to be added at a time.

CascadeLayerBuilder has been removed, since the PrototypeFullyConnectedLayerBuilder
is now more appropriate.

The unit tests had to be slightly modified to deal with the new configuration approach,
but should still correctly test standard cascade architecture functionality.
New unit tests were added to deal with a more complex cascade architecture.

Some white-space has been change to fit the CIlib convention.
Merge pull request #105 from censlin/cascadeArchitectureRefactor

Refactored cascade network architecture.
Moved many continuous functions into unconstrained package.
Made topology neighbourhoods not deal with iterators. Also made the simulator test create a test simulation to make sure all tags are valid.
Removed unnecessary candidate solution classes.
Merge pull request #106 from robgarden/unconstrainedFunctions

Moved continuous functions into unconstrained package.
Merge pull request #107 from filinep/neighbourhoodChanges

Topology neighbourhoods do not require iterators.