Cleanup, add one-time-include guard to .h file. Remove unnecessary 'using'
Add CMake config files and licenses
Add missing methods: HasValue and const Search.