Added new algorithms

Notes:
+ The numpy neural network is A LOT faster
+ The knapsack algorithm returns the cheapest way to achieve all the
possible costs.
+ The sudoku solver still needs some brushing up before it is complete