filterfish/smith2 — pull request #19 by DylanGriffith (2014-11-12 21:30:40+00:00)
Title: add group support to list command

After I though about it I realised that the `all` option didn't conflict with `group`, so we would still need to consider that. I tried to do it the way you suggested and not load agents then filter afterward, but couldn't think of an easy way to do that which didn't involve duplicating the filter for `state` after.

The main issue was that both `#find_by_name` and `#state` returned arrays (and not the fancy agents enumerable), thus they could not be chained in any obvious way, so the filtering using a `#select` seemed inevitable. Though it may, I suppose, have been possible to get the array and construct another fancy enumerable from that.

I have tested this locally to much delicious success:
```base
$ bin/smithctl list -la
total 3
stopping 753ebf3b-fd1a-49c1-8418-1e1c34da860e 95204 2014/10/16 17:12:35 (agent dead) InstagramPostPersistAgent
running 39acbcbd-3d21-448b-bd0b-0e5723aa6ad3 14315 2014/11/12 16:31:56 InstagramPostgresPostPersistAgent
running 0713076a-6c66-4fad-a392-8be79e2fc5ca 81593 2014/11/13 08:20:03 InstagramPostsUserReportAgent
$ bin/smithctl list -l
total 2
running 39acbcbd-3d21-448b-bd0b-0e5723aa6ad3 14315 2014/11/12 16:31:56 InstagramPostgresPostPersistAgent
running 0713076a-6c66-4fad-a392-8be79e2fc5ca 81593 2014/11/13 08:20:03 InstagramPostsUserReportAgent
$ bin/smithctl list -lg satin
total 1
running 39acbcbd-3d21-448b-bd0b-0e5723aa6ad3 14315 2014/11/12 16:31:56 InstagramPostgresPostPersistAgent
$ bin/smithctl list -lag satin
total 2
stopping 753ebf3b-fd1a-49c1-8418-1e1c34da860e 95204 2014/10/16 17:12:35 (agent dead) InstagramPostPersistAgent
running 39acbcbd-3d21-448b-bd0b-0e5723aa6ad3 14315 2014/11/12 16:31:56 InstagramPostgresPostPersistAgent
```