Changes:
- Added UFunction bindings to unicast and multicast delegates
- Pulled non-templated class methods into shared base classes to reduce the code that needs to be parsed and compiled
- Multicast delegates are now collections of delegate bindings instead of unicast delegates
- Fixed one bug where removing a binding in RemoveByDelegateInternal would skip over the current binding in RemoveAndSwap
- Updated/added some documentation
- Changed NULL to nullptr
#CodeReview: mike.fricker
[CL 2067743 by Max Preussner in Main branch]