made more OO type handling
added __pycache__ to gitignore