added hospital model and refactor to use it