Add support for Function definitions