Break up Promotion index sql for the tableview

This follows Site's admin `Account/Index.php` naming conventions and allows easier subclassing of the query parts.