Simplify known scopes computation.

Review Request #2389 - Created June 18, 2015 and submitted

Benjy Weinberger
jsirois, stuhood, zundel
Previously we were requiring the goal/task code to compute intermediate
scopes (e.g., to know that if `` is a scope then so is

However the arg splitter doesn't need this - it only needs to know about
scopes that actually register options.

The parser hierarchy needs to know about those intermediate scopes, but
it can simply compute them as an implementation detail.

So now the goal/task code only computes scopes that you could actually
register options on.

Also removes some superfluous sorting.

Tests pass locally. CI in flight:

John Sirois
Benjy Weinberger
John Sirois
Benjy Weinberger
Benjy Weinberger
Review request changed

Status: Closed (submitted)

Change Summary:

Submitted as 400d77fc7b977a90e5644bbec1bd47b842f2bf1e.