-Ystatistics accepts a list of phases for which to print stats

Also cleaned up handling of defaults in MultiChoiceSetting.
Actually, guess what, I'd like to offer you a PR which makes MultiChoice take an Enumeration.  It's actually very simple, and book-keeping with ValueSets is easier than working with Strings.  It's much more natural.

You really motivated me to move the code a bit further. 

I'm hampered because of watching Woody Allen's Husbands and Wives on Hulu.  Kind of devastating.

Anyway, it's kind of funny:
```
  val YstatisticsPhases = {
    object phases extends Enumeration { val parser, typer, patmat, erasure, cleanup = Value }
    val description = "Print compiler statistics for specific phases"
    MultiChoiceSetting(
      name    = "-Ystatistics",
      helpArg = "phase",
      descr   = description,
      domain  = phases,
      default = Some(List("_"))
    ) withPostSetHook { _ => scala.reflect.internal.util.Statistics.enabled = true }
  }
```
I'll try to finish up and PR to your repo before I fall asleep.

I also like the idea of leveraging much-despised Enumeration.  It kind of shines in this application.

Similarly,
```
  object LintWarnings extends Enumeration {
    case class LintWarning(name: String, help: String, yAliased: Boolean = false) extends Val(name) with MultiChoice
  
    val AdaptedArgs            = LintWarning("adapted-args",              "Warn if an argument list is modified to match the receiver.",               true)
```
and
```
def warnAdaptedArgs            = lint contains AdaptedArgs
```
you get the idea.