bug 1094767; crashstorage type for new ES module

This PR introduces a crashstorage type for the new ES module.  It also modifies the `ConnectionContext` class to bring it in line with the patterns established in the other `external` modules.  The changes to the context required some other modifications to be made to the index creation class (and associated tests).

`r?` @AdrianGaudebert @twobraids 
Instead of testing the API of the connection client, why not keep an actual test of that client? I liked the idea of trying to index a document and verify it gets put in the database here. That proves that the ConnectionContext gives you something does what we ask it to do: talk to Elasticsearch.