(wip) plagued by a horrible resurgence of the '<some type> is already defined' bug