Add [tailRecursive] annotation to built-ins
Add binary attribute to generated built-ins data
Tail-call detection support in the front-end
Minor: better assertions and warnings removed
Store methodStartLabel in MethodContext
Support tail-call optimization in the JVM back-end
Tests for JVM back-end support of tail-call optimization
Don't analyze tail calls when only declaration headers are processed

Otherwise we are getting spurious "NO_TAIL_CALLS" warnings
Rename directory for diagnostic tests
Rename directory for back-end tests
Missing tests added
Use codegen box tests for tail calls as diagnostic tests too
Indirect tests for tail call diagnostics removed
No need to store a list of recursive call expressions in trace
Do not rely on JetCallExpressions in tail-call detection

Calls come in other forms too
TCO: Optimize all function calls, not only JetCallExpressions
TCO: Re-use parameter values already loaded onto the stack for a recursive call
Detecting tail calls through CFA
Properly detect changing 'this' reference in tail calls to members
Unused code removed