Add ability to test for expected errors in intentions

If an intention test contains `// SHOULD_FAIL_WITH: my_string`, the test
is expected to throw `IntentionTestException("my_string")`. This is
useful for testing whether or not a function that should be called, is
called (a pop-up dialog is displayed, etc.).
Add ability to test for expected intention text

If a testData file contains `// INTENTION_TEXT: ...`, the tested
intention's description must match `...`.
Avoid throwing unchecked exceptions

Make `ResolvedCall.getValueArgumentsByIndex` return null instead of
throwing an InvalidStateException when resolving invalid arguments.
Invalid arguments are a user error (the user specified the invalid
arguments in their code), not a program error.
Add KotlinSignature annotation to RESOLVED_CALL

A ResolvedCall's CallableDescriptor cannot be null.
Add replacement intentions for operator functions

Add intentions for replacing attribute calls that correspond to
overloadable operators with their respective operators.

This commit includes call replacements for:
 * Binary Infix Operators: plus, minus, times, rangeTo, mod, div
 * Unary Prefix Operators: plus, minus, not
 * Array Index Operator: get
 * In Operator: contains
Merge pull request #368 from Stebalien/add-operator-intentions

Add operator intentions
#KT-4558 Fixed
Fix kotlin-android plugin for android-gradle:0.9+
#KT-4667 Fixed
Implementation of KT-4288

Getters to access elements of indexed collections via rangers and iterators.

External functions implemented for:
List, Map, CharSequence, String, Array and primitive arrays (ByteArray, etc).
renamed get() to slice()
Implementation of KT-4288

External functions and tests implemented for:
List, Map, CharSequence, String, Array and primitive arrays (ByteArray, etc).

(cherry picked from commit b1f86f30edc5edc500d61c7c0230f5601029b2e7)

Conflicts:
	libraries/stdlib/src/kotlin/Strings.kt

changed get() to slice()
test for Map.slice()
tests for String.slice()
tests for CharSequence.slice() // CharSequence is StringBuilder
tests for List.slice()
tests for Array.slice(), IntArray.slice(), etc
improved the comments
created Aliases.kt
aliases for .slice() for List, Map, String and arrays
aliases for .slice() for List, Map, String and arrays

renamed get() to slice()
improved the comments
created Aliases.kt
aliases for .slice() for List, Map, String and arrays
Merge remote-tracking branch 'origin/KT-4288_slice_func' into KT-4288_slice_func