LocalArray API: indexing

`LocalArray[index]` is now indexing on the *local* ndarray. Global indexing is done with `LocalArray.global_getitem(index)` and `LocalArray.global_setitem(index, value)`. 

This seems hackish since we can't use the standard syntax for global indexing anymore. I tried delegating global indexing to a `global_index` object with `__get/setitem__` methods. But this made `LocalArray` objects un-pickelable. I'm not sure why, but I was getting `can't pickle instancemethod` errors. If anyone has a suggestion for how to get around this I'll share my failing implementation.