started syntax::FunctionDefinitionSyntax::registerNames()
added semantics::Function::destroy()
added semantics::{Native,User}Function