Added elasticsearch-model to handle the indexing of models.

`Elasticsearchable` is already getting included by `Person`, `Department`, and `Group`. But instead of doing all the indexing ourselves, I removed all the custom code and included `Elasticsearch::Model` which does the indexing for us.

`as_indexed_json` is a method that `Elasticsearch::Model` expects from each searchable model.