Index annotation

This PR adds support for `@Index` annotation. Using this annotation, a field will be indexed for faster searches. Currently, only string fields can be indexed but soon integer fields will follow.

@bmunkholm @emanuelez 
consider:
1) possible for -> appliable to
2) using the other error function that allows you to include the element