Added client-side support for --contains-text on the list command.

- --contains-text with --installed or --consumed options use a
  client-side filtering implementation, where --available uses
  server-side.

- Fixed an issue which would cause output for --available or
  --consumed to be skipped if --installed or --available had
  zero objects to display.

- Updated the man pages and auto-complete accordingly.
![headexplode](https://cloud.githubusercontent.com/assets/51265/4581321/30ce332c-4fdf-11e4-820d-941213fbc7f1.gif)

Had to plug that into kodos to see how it works. Could you give some thought to whether or not it's possible to explain that regex a bit more in comments, it's a bit of a mind bender.

Tinkering with kodos, any mistaken use of ** or *? (neither of which makes any sense) will result in a None match.group(1) I think, worth adding some examples of this in unit testing just to make sure it does what we would expect? 

Actually ?? might be a valid use case. I would expect the others to just boil down to *.