added .gitignore
add State class, Transition class