Fixes #1384. Fixes Scope.parseScopedKey

Fixes #1384.

`Scope.parseScopedKey` now supports full range of legal keys described in the documentation including {.} and other notation for `ProjectRef`, `BuildRef`, and `ThisBuild`.
Just in case any plugin is using `val ScopedKeyRegex = """((\w+)\/)?((\w+)\:)?([\w\-]+)""".r`, I'm leaving that old regex as is and added `ScopedKeyRegex2 ` in `private[sbt]`.

This looks like gobbledygook to me.  Any reason we don't just make it a format parser with less crazy?

I'm not 100% happy with the error messages you get if you f up the syntax already, but I'm not sure I'd be able to maintain this regex.