Update Annotation.java

Inappropriate design of the Hash Function :-

Two totally different Annotations can easily map to the same hash value, which in my opinion was not intentional here.

For example :-

Annotation 1: [Concept: 13, Position: 2, Length: 1] maps to ("" + "13" + "2^1").hascode() i.e. "132".hashcode()
Annotation 2: [Concept: 1, Position: 2, Length: 5] maps to ("" + "1" + "2^5").hascode() i.e. "132".hashcode()

This was just one such example; one can easily construct similar examples.

Instead, my proposed Hash Function should take care of such cases.

Thanks.