Restructure the way tp works. Still in progress.

- I want to imitate the way git works, using commands. For example,
    git init .      |   tp init codeforces
    git remote add  |   tp test add

- Add gen command to generate individual solution templates.
  Usage: tp gen solution.cpp

- Add --version and --help options.