BIG CHANGE!

Crap, and now I just realized that this doesn't handle the bit where we need to check whether the new messages are unread or not.  It's possible that we are syncing messages that have already been read on another client, so there needs to be some filtering that occurs.

This implies that we need to perform filtering as we hear about new messages.  I now propose that we add a hook to FolderStorage.addMessageHeader that allows a helper function to be called on every header it sees.  The function in this case will be a closure that is maintaining a new message count.  It will only increment the count if the message is unread (No \Seen flag) and its date is >= the endTS of the youngest message we know of per getYoungestMessageTimestamp.  We define the closure inside refreshSync and clear it when we're done.

This has the nice up-side that we should also be able to use this mechanism for periodic mail synchronization improvements we are making.