I take that back in this case.  Not sure how I feel about it, but I'm generally a fan of the filename/contained class name being the same.  I broke my own rule.  Of course there are exceptions.  Not sure this is one or not.  Perhaps it's worth breaking this apart at this point.  It wasn't when I started.