isolate some code for testing in stubs.py

Also modified .gitignore to change the path to the htmlcov folder. It now appears in the parent directory where testrunner.py is located
update .gitignore to ignore virtualenv files
update to properly use modules

Previously I had trouble getting modules to work. This is because I
wasn't running it as a module, which you do in python by using the -m
flag, i.e.: python3 -m tenk.main. This wasn't written in the Python
documentation on modules, but I finally found the answer when I was on
google looking for a solution to an unrelated problem.

Other changes:
tenk/main.py: add documentation, clean up excessive comments
tests/stubs.py: remove as it is unnecessary
save user data in home dir instead of in program dir

tenk/main.py: add check_storage() function to check for/create ~/tenk dir
tenk/main.py: save *.tk files to ~/tenk
tenk/main.py: after searching for users, check for empty sequence
.gitignore: remove *.tk
.gitignore: remove ~* (emacs lockfiles)
add basic "sessions" functionality

tenk/sessions.py: Allows user to log more detailed data about a
session. Specifically - date of practice session, time spent practicing,
and details about what was practiced (optional), what
improved (optional), and what the user plans to focus on next
session (optional). All of this data is stored in an XML file.

Docstrings were updated for: tenk/skills.py, tenk/users.py