change some models and add types for improvements and objectives