Merge branch 'feature/function-interception'

* feature/function-interception:
  Add default value for flag to fix the tests
  Add flag to the container and to the options to switch on the support for function interception
  Update the demo aspect to use execution pointcut for functions
  Update the parse table and grammar for function executions
  Fix the tests (newline was added)
  Add PointcutParser class to automatically inject parse table and rename the test
  Add in-memory caching of function code to reduce the overhead of building the source code for same function
  Fix an error with composite function pointcuts
  Extend the ReflectionFunction with custom namespace names
  Add new demo for function interception
  Update production parse table for new grammar
  Add support for function interceptors
  Some cleaning and phpDocs
  Support for optional parameters and by reference passing
  Function proxy dirty implementation #53
  Add function around implementation to the framework, needed for #53
  Reflection function invocation class for #53
  Base interfaces for function invocation and interception #53