Working, and refactor to hide model loading