Replace NULL with nullptr
Adding C++11 style namespaces on enums

Using the enum name is optional, but greatly enhance clarity.
Add additional variables to CutLevel.h

These new variables will be used by the weight vector in the tuples.
Add weight vector to ZDefinitionTree

Instead of having two hardcoded weight fields, ZDefinitionTree now has a
variable size array that is filled. The new "total weight" is the
product of all the weights in the array.