added paper/documentation and cleaned up recognizer.py