Made a basic network creator.

Can only have one network active at any time.
Tested the boundary condition.
Added input, hidden, and output numbers to network structure.
Confined the network to only the counterprop file.

Other files including counterprop.h will have to use the methods
provided to modify the structure.
Randomizes all weights before allocating them.
Simplified the definition of the network.

No longer have layers, just have weight arrays. (Treated like a matrix)
Made a basic get output function.

Calculates error and determines the Kohonen winner. Returns the
appropriate Grossberg output.
Broke out the logic to find the winning node.
Made a training function.

Takes inputs, outputs, and the network. Finds the winning node,
then updates the weights to be closer to the inputs and outputs.
Moved static function declarations.

Now in the actual file the static functions are declared. Did not make
sense to have them in a header that would be included by other files.
Clarified the training function.
Made functions to retrieve hidden or output weights.
Made a file persistance file.
Transferred the ownership of the weight array.

Does not work for the counterprop_test. Need a test persistence file.
Got the testPersistance file working to fix old tests.
Made more compile warnings visible.

Fixed most of the warnings that appeared.
Got rid of all gcc warnings.
Merge branch 'features/initial-structure' into development