Indexing signals by a vector returns a signal

For now this seems like a good compromise.  Fixes #7.