Update template
Use new cmake utilities to generate modules and move all the C++ to a static library so that it is easier to write unit tests for the new app.
Use new cmake utilities to generate modules and move all the C++ to a static library so that it is easier to write unit tests for the new app.