Tested the generic state class for the State<Integer, A> monad
Adding more flatMap calls rather than implement directly
Cleaning up monad flatMap handling