Various changes; Moved State monad import