Refactor codegen of "in" expression

Use generateIn() twice, for binary expressions and for when clauses
Don't try to generate optimized "in" for LongRange

 #KT-4097 Fixed
Update year to 2014 in generated files
Add copyright and auto-generation notice to built-in sources
Move built-ins generators from 'runtime' to 'builtins'
Refactor built-ins source generators
Add GenerateBuiltInsTest

Tests that generated sources of built-ins (Functions, Ranges, etc.) are
up-to-date
Remove outdated hack in DeclarationResolver
Fix variance in Progression and Range
Delete outdated hack in Unit
Revert "Using default renderer in LoadBuiltinsTest."

This reverts commit 1d21ebf882d9fa417f57f4468eb2dfe2032fb445.

Conflicts:
	compiler/testData/builtin-classes.txt
	core/descriptors/src/org/jetbrains/jet/renderer/DescriptorRendererImpl.java

Reverting a part of this (related to the field 'prettyFunctionTypes') because
will need to add a test that deserialized built-ins (obtained by
KotlinBuiltIns.getInstance()) are consistent with lazy resolved built-ins. This
test would break because while DescriptorRenderer renders pretty function types
it compares descriptors to the ones from KotlinBuiltIns, but in case of lazy
resolve descriptors created for built-ins would be different from
KotlinBuiltIns, so renderer wouldn't correctly render a function type
Check that lazy resolve works correctly on built-ins

This test is needed because BuiltInsSerializer uses lazy resolve to load and
serialize built-ins. We need to make sure that lazy resolve works exactly like
deserialization
Revert hack for annotations on built-ins

This reverts commit 5cae5c0338e9ace30c8d80f4a030981d9193c96e