Add groups

Groups allow modules to be arranged in... groups. Groups will be
distributed accross the bar, and the space between the groups is
distributed evenly (hence an uneven number of groups may not necessarily
result in a centered group, depending on the space each group takes up).

The idea is to be able to visually separate groups of modules, e.g. one
may want to show window manager information (via the stdio module) to
the left, and system information to the right. Using groups, this should
now be easily achievable.

Readme updates/docs will follow.