There is absolutely going to have to be a minumum MN spec (bandwidth!) for this though. And it's going to be near impossible to enforce that, so some mechanism for booting shitty underspecced VPS's off the network would need to exist.
Well, if they have to pay for bandwidth, then it makes sense for the masternodes to get paid based on bandwidth provided, perhaps? There are plenty of considerations/caveats for this though.
I would imagine it would be a very very hard task to design and implement such a system so that no one can cheat it. Maybe practically impossible?
First thought that springs to... upon joining the MN network a new MN is 'benchmarked' and given a score, with work and rewards dished out accordingly. Would still need some min spec though. And some check to make sure the service was running on a bona-fide MN at all, depending on how integrated it ends up.
The existing system for voting/block reward payment needn't be affected.
It's certainly a challenging problem. Luckily we know a dev who likes a challenge.