Fixed generics so that functional types don't map to generic base Object.