Merged type maps and moved type specific structured handling into types themselves