Type inference for functions works YAAAY