truncate `opam list` output w.r.t. the size of the current terminal

I find that the output of `opam list` isn't very legible: many descriptions are quite long and end up being wrapped in the terminal.

This patch tries to truncate the descriptions to adjust them to the terminal size. I wasn't too sure about the best way to obtain the terminal size ; rather than add C bindings, I simply use external commands. It seems to work fine on linux but no idea how it fares on OS X :)