Move late contribution fetcher to its own file

Also, are you sure the math adds up on this? `this._totalContributionsRaw()` already includes the unitemized contributions.