Add & test regularizer class hierarchy: L1, L2 & skeleton of MaxNorm

The design and implementation in this pull request is highly inspired by the counterparts in Decaf. Thank the original author. 

The Regularizer has not been integrated in the Layer::Backward* methods to play its role and the MaxNorm regularizer is only half-baked yet. Those functionalities would be finished based on the feedbacks of the community.

Related issues: 
#60: Sparsity penalties for unsupervised learning 
#109: Alternative to weight decay: max column norm