Sustainers performance enhancements

 - Replaces strtotime('now') in a few places where being off by a second or two shouldn't matter.
 - Changes the by_member() call on the sustainer edit form to by_masterdid().
 - Updates the by_member() query to use the base table in the WHERE clause instead of the joined table.
 - Creates a count remaining donation query that doesn't use a LEFT JOIN or ORDER BY and does the count inside the query. This is used on the sustainer edit form and on the donation success hook implementation.

That's fine too, but the query in that function does a LEFT JOIN and an ORDER BY that aren't needed to get the count. I didn't do any benchmarking but that's going to be slower. Plus this is called in fundraiser_sustainers_donation_success, to determine if the expired CC email should be sent, so it'll be multiplied by the number of sustainers processed in a fundraiser cron run.