Add premature support for fragment functions.
Add lazy loading to the constructor and compile referenced classes, so these classes are available before the JVM checks the class (which happens when the constructor is actually fetched). This is necessary, because template classes are now used by fragment calls directly, instead of the Template interface.
The standard render function is now compiled as if it was a fragment with no parameters (except the general parameters).
Add test for fragment functions.
Update TODO.
Fix call of local fragments.
Adjust example accordingly.
Add parent attributes to closures so that they can call their parents' fragments.
Add identity conversions to primitive type promotion.
Add external fragment call test.
Make argument names in fragment calls optional, if the correct order is obeyed.
Reformat Operations test.
Only infer argument names if the called unit is a fragment.
This has to be done because closure parameters are currently not known to the compiler.
Add null check for optional closure.
Use all parameters for name inference if the fragment is external.
Remove argument name (which is now inferred).
Formatting changes for consistency.
Remove superfluous argument name.
Update TODO.
Require negation to stand in parentheses, to solve ambiguities related to subtraction.
Update TODO.
Add 'frag' keyword to id.
Clarify that 'name' is indeed a function name in the message of the exception.
This was ambiguous for certain function names such as 'frag', 'fragment', etc.
Implement StandardUnit.call method with Java Reflection.
Add test for call with Unit.call.
Update TODO.
Update TODO.