Adding a cmake list file in the source directory.

- This allows the source directory to control its own files.
- The top level cmake file now only worries about the executable and how
to build and link it.