Two changes: Fix Crash when Settings Change and Support no _source

1
If we detect that there is a difference in the current mapping and the existing mapping, do not try to immediately create a new index.  Rather, determine whether a new index needs to be created or whether updating the existing index is sufficient. Previously, if the mapping changed, this code would raise an exception. 

2
Support indexes with _source turned off.  It can be desirable to have _source turned off because it usually creates a much larger index.  The backend was assuming it would be available and would crash if it was turned off. This second change fixes Issue #930.