Merge pull request #27 from mark-burnett/states-for-additional-error-handling

Add test dependency (Test::Exception)
add simple path through new state machine