Add rules to allow omission of certain default values
This PR changes the rules about augmentation of constructors such that an incomplete factory is able to defer the decision about implementing the constructor by a redirection or by a body. See https://github.com/dart-lang/language/issues/4172 for details.
I like the general direction here, but if we're going to loosen the proposal so that augmentations can fill in default values, I think we should go all the way and let them do it for all functions.
I changed the rules to allow all kinds of augmentable functions (incl. constructors) to specify a default value for an optional parameter in the introductory declaration or in an augmentation, but at most once, PTAL!
@munificent, WDYT?
@munificent, this one was rebased around the file renaming operations, PTAL.