Initial elasticsearch implementation