Simplify KotlinLexer

Delete the useless Unicode option which was copy-pasted from CSharpLexer. As
there's no specification on what Unicode symbols are allowed in Kotlin yet,
assume that 'basic' character set from C# will be enough
Update Kotlin URL with the newer one
Update KotlinLexer

- get rid of things which were copy-pasted from CSharpParser but make no sense
  in Kotlin
- use the set of keywords taken right from the sources of Kotlin lexer
- highlight Kotlin-specific constructs as operators: ::, !!, ?., ?:
- highlight declaration names differently according to the declaration kind
  (class, function, etc.)
- highlight backtick-escaped names as identifiers (e.g. `type`)
test