Add index.data_path setting

This allows specifying the path an index will be at.

`index.data_path` is specified in the settings when creating an index,
and can not be dynamically changed.

An example request would look like:

```json
POST /myindex
{
  "settings": {
    "number_of_shards": 2,
    "data_path": "/tmp/myindex"
  }
}
```

And would put data in /tmp/myindex/0/index/0 and /tmp/myindex/0/index/1

I found that the `NodeEnvironment` abstraction works well for index-specific
data paths, and passing the index settings in to the various methods gives
us more flexibility in the future with regard to adding any other environment-
specific settings.
why a single data node? If you need that, you can use `numDataNodes=1` instead