Vastly improved FlowPropertyDefinitionBuilder code : removed unnecessary/redundant methods.
Made FlowPropertyExpectation immutable and FlowPropertyDefinitionImpl almost immutable ( and will be in the future)
FlowPropertyDefinitionBuilder now constructs FlowPropertyDefinition only when asked.
More consistent handling of default behavior ( for example what is the default PropertyScope? This is now determined by the FlowPropertyDefinitionBuilder - this makes FlowPropertyDefinition more consistent with behavior.

FlowPropertyDefinitionImpl has had most of constructors removed: FlowPropertyDefinitionImpl now must be constructed with the FPDB.
remove commented out FPDI code

FlowPropertyDefinitionBuilder now has many fewer ctors and has almost all ( FPDI.merge() is the exception ) construction code moved from FPDI to the FPDB