Typeable overhaul (see #5275)