Added State Machine and beginning of test examples for mocking