Adding C++11 niceties to the program, starting generic data interface