Added an INSTANCE property so we can flag instances in ES

Changed from using valueOf to get PropertyIndex - doesn't work with hyphenated names. Added a static method.

Add desired access to fetch of search results.

Still using some incorrect names for ES fields - e.g. "attendees" should be "attendee".

Search needs to filter based on the retrieval mode. If we are getting expanded events we need to filter out th emaster and overrides. Otherwise we need to make sure we only get master and overrides and recombine them so that the overrides are stored in the event info for the master.

We still need to search the instances if the search request has filters. This requires a search followed by a multi-get to obtain the master + override for the succesful events.

The recurrence id in the key was not set correctly causing the equal version errors we were seeing.