Trying to think of what rabbit comes out of the hat next year to keep us under 60 minutes on my 2.3 Gbps connection. The most likely target is reduction of the deserialization and deallocation costs, by denormalizing the wire deserialization for milestone runs. We don't need the full block object model for milestone, all we need is tx and header hashing. That already comes directly off of the wire (before object deserialization). That should knock at least 10% off of total milestone time, and blocks 900,001-950,000 should be roughly 10% of the total chain at that point.
(edited)