Reduce the total directory level.

Make the directory structure of project simpler.
Update CMakeLists: add installtion rule and modify project name.
Fully implement Tile and its type trait check.