Add config support for kafka.partition.assignment.strategy

New feature that exists in kafka trunk, and basically what it does is
to distribute all partitions across all available consumer threads, so
that we actually can scale our “Secor” instances.
Check upload policy every N messages / seconds

Reusing `secor.messages.per.second` which is used for rate limiting, but
we’re currently setting it to a very large number to avoid being rate
limited at all, so we might as well use it for this as well.
Memoize certain config. props. in Uploader
Memoize topic-partition forget secs. in MessageReader
Add “NoReloadingStrategy” for SecorConfig

Currently there’s a lot of time spent reloading the configuration file
from disk, which is a pretty nifty mechanism, but it only applies to
a certain (not really well-defined) set of configuration parameters, and
it should either apply to all configuration parameters, or non. The
latter is covered by this commit.
Move static (private) method in LogFilePath
Add functionality for excluding topic name from S3 path
Merge branches 'consumer-partition-assignment-strategy-support', 'configurable-msgs-per-second', 'memoize-config-props' and 'exclude-topic-name' into staging