Added Put and Get functions for State monad + unit tests