Adding state type back into state generic.  Adding test to show State Monad used for logging