optimize gitignore
add cmake files.
example arg parsing.