##Self-Assessment
####Functionality - 3 I have an Enigma class with encrypt and decrypt methods (successfully implemented), as well as the encrypt/decrypt command line interfaces (also successfully implemented).
####Object Oriented Programming - 3 My project is broken into logical components with four classes with single responsibilities. There are only two methods over 7 lines (they're 8 lines long - encrypt_message and decrypt_message). No class is more than 100 lines. The variable and method names clearly communicate purpose. IE get_todays_date, encrypt_message.
####Test Driven Development - 3 All of my methods are tested in unit and integration tests. For example, any method that shifter has tested is also tested in enigma. My git history shows that I never wrote methods before writing a test. All of my tests show coverage of above 95%.
####Version Control - 3 I have over 150 commits, 17 pull requests, and none of my commits include multiple methods.