Added getOutputFromLayer method
Added a test to check if the constructor creates a copy of the input
layer
Added add method test

This test will check if a copy of the input layer exists or not. Also it
will check if the layer was added or not.
Added a test to check addAll method
Added set method test
Updated add method test

Now this test will check if it saves a new copy of the layer when it is
called with an index
Removed unused imports
Added some little explanation to the asserts
Added interface Cloneable
Added a method to clone a Neuron
Added a clone method test
Added clone method
Added clone method test
Updated add method

Now it will create a copy of the layer when it will be added
Updated addAll method.

Now it will create a copy before add it
Updated addAll method

Now the method will always create a copy of the object before assign it
Updated set method

Now this method will create a copy before set a NeuronLayer object
Updated add method

Now this method will always create a NeuronLayer's copy before add it
Checked a lot of methods.

The next methods was checked to ensure that they will create a copy of
their respecitve arguments before add it to the class:

- addHiddenLayer
- setHiddenLayer
- addOutputNeuron
- setOutputNeuron
- addInputNeuron
- setInputNeuron
Nothing has changed