(WIP) Added Multi-layer perceptron (MLP)

Seeking to finalize MLP
Fixed some typos
A lot of improvements

1) Optimization_method parameter for selecting any scipy optimizer
2) SGD is also supported
3) Improved minibatch creation using scikit's gen_even_slices (much
faster)
4) Support of loss functions
Removed unnecessary `print`
More fixes

Renames, seperated the algorithm to `classifier` and `regression`
some line fixes
more line fixes
replaced 'einsum' to a more readable and faster operation
Added an example to illustrate MLP performance on the digits dataset, verbose for SGD and minibatch processing for l-bfgs
added neural_network to setup.py
Fixed initialization disagreements
Renamed methods for readability
Cleaned the code and set internal functions private
Fixed some travis errors
More Travis error fixes
Updates to fix 'tanh' values issue with 'log'
Updated the method descriptions
replaced 'einsum' to a more readable and faster operation
Added an example to illustrate MLP performance on the digits dataset, verbose for SGD and minibatch processing for l-bfgs
Fixed initialization disagreements