Fleshed out not shared types, added templating for other actors