Made something so beautiful it made me cry...State pattern
Merge branch 'master'