add initial support fot doxygen-generating

how to use it

1. `cmake .`
2. `make doxygen`
3. open docs/index.html