Fix for parsing Map<String, List<String>>.

The problem with expression like

Map<String, List<String>>

is that '>>' at the end parsed as right shift, not as closing of two angle
lists.

To fix this, right shift is no more detected by lexer, instead, parser
constructs right shift from two consequent 'greater' tokens.
Added fix and tests for >,<,<=,>= cases
Merge pull request #18 from alosich/fixing-parsing-closing-double-angle-list-as-right-shift

Fixing parsing closing double angle list as right shift