compile caffe without MKL (dependency replaced by boost::random, Eigen3)

- examples, test and pycaffe compile without problem (matcaffe not tested)
- tests show some errors (on cpu gradient tests), to be investigated
- random generators need to be double checked
- mkl commented code needs to be removed
Fixed uniform distribution upper bound to be inclusive
Fixed FlattenLayer Backward_cpu/gpu have no return value
Fix test stochastic pooling stepsize/threshold to be same as max pooling
Fix math funcs, add tests, change Eigen Map to unaligned for lrn_layer
Fix test_data_layer segfault by adding destructor to join pthread
relax precision of MultinomialLogisticLossLayer test
Merge pull request #28 from kloudkl/boost-eigen

Replace MKL with Boost+Eigen3

* commit '70c4320e436f92d0963b2622d20c7435b2f07f30':
  Fix test_data_layer segfault by adding destructor to join pthread
  Fix math funcs, add tests, change Eigen Map to unaligned for lrn_layer
  Fix test stochastic pooling stepsize/threshold to be same as max pooling
  Fixed FlattenLayer Backward_cpu/gpu have no return value
  Fixed uniform distribution upper bound to be inclusive
  Add python scripts to install dependent development libs

* commit '9a7d022652d65f44bebc97576a3b4f1b5e559748':
  Fix test_data_layer segfault by adding destructor to join pthread
  Fix math funcs, add tests, change Eigen Map to unaligned for lrn_layer
  Fix test stochastic pooling stepsize/threshold to be same as max pooling
  Fixed FlattenLayer Backward_cpu/gpu have no return value
  Fixed uniform distribution upper bound to be inclusive

* commit '958f038e9e0b1b1c0c62b9119b323f4d62a3832a':
  Fix test_data_layer segfault by adding destructor to join pthread
  Fix math funcs, add tests, change Eigen Map to unaligned for lrn_layer
  Fix test stochastic pooling stepsize/threshold to be same as max pooling
  Fixed FlattenLayer Backward_cpu/gpu have no return value
  Fixed uniform distribution upper bound to be inclusive