Disable colors from very beginning and when piping

1. Fix:
When run with `--no-colors`, first few lines of the log were
still colored (responsible for creating campaign) since the
color config was changed later than the campaign was created

2. Feature:
When the output is piped to another process or a file,
from now the output will not be colored unless it's explicitly
requested with `--colors` was passed.

Close #81
Close #113
Enable colors in attester-as-module tests; better logs

Close #113
Randomize campaign ID to not be only time-dependent

In case of two campaigns started at the very same time, they
used to get the same ID because campaign ID was the timestamp.
This commits adds a random element in campaign ID at its end
to minimize the risk of ID clash.

Two campaigns created at the same time can be seen e.g. in this test

grunt jasmine_node --grep=campaignLifeCycle

Close #113