Refactored test suite to match new fsm.arc naming and interfaces. Tests also show examples of how fms.arc can be used.
Minor refactorings to clean up the code. Added some documentation. Removed comments that are now duplicated in the test suite.