removed type system and replaced it with managers