Build using Visual Studio 2013

- Functions that returns arrays have to use std::move
- Fix return type of TMP_N::fill
- Add all header files to CMakeLists.txt