Hook up WMCores event aware lumi splitting.

Creates jobs by consuming lumis from the dataset until a user specified
number of events is reached.  This gives more evenly sized jobs for
datasets with more variation in lumi size.

Fixes #4199.  Additional changes not needed.  The database connection in
WMCore is optional, and if not present, the lumi size is estimated from the
number of events in a file.