Use State monad to keep track of Swagger models
Add ModelsCache and ModelState type aliases