Cleanup Slice command propagation.

Use `__getattr__` as it only gets called as a fallback when the Slice object has
no attr with `name`.

Add a unittest.