Major update with bugfixes and improvements

* C++

- fixed some assertions in comma_initializer.hpp
- fixed a few initialisation bugs in sparse_slice
- changed sparse_slice to accept a single template parameter and
  added the += & -= operators
- rewrote scalar operations for cwise_binary_op. Now using a wrapper
  for scalars (ie. double & std::complex<T>).
- added a few new typedefs in defintiions.hpp
- fixed some code to be compatible with MSVC2010