Speed up Get-GitStatus

When 'git status' produces a bunch of output, the processing of the
output was fairly slow.  In my case, I was converting a source base
to git and there were >4000 files to add for the initial commit.

Get-GitStatus was taking ~5 seconds but 'git status' was only 400ms
of that 5 seconds.

There are three changes to speed this up.

    * Roll my own version of Select -Unique which is much faster
    * When parsing the output, use the looping ability of the switch statement
    * Add break/continue statements in the switches as appropriate

With these changes, the parsing time is down to 1700ms, so the total
time is less than half.  1700ms is still pretty slow to parse ~4000 lines,
I'm thinking the regexes could be tweaked some more if necessary.