Small changes in CMakeLists.txt
Add Google Mock for unit tests

The source of google mock is added to the repositoy so it is self contained.
Some changes for unit tests in CMakeLists.txt.

No tests implemented and added yet!
Add .gitignore
Modify .gitignore to ignore build directory