couldn't a mining pool just create a block with only say 10 transactions which represented the highest fees of all the transactions in the mempool?
How do you suppose this could be done?
Having a block maxed out with a lot more transactions is an incentive to the miners, as they will earn some more Bitcoins from the transaction fees on top of block rewards.
thus having an effect of slowing down the network.
How?
It's not like one pool will be mining all the blocks. On top of that, difficulty adjustment can also help after very 2016 mined blocks
if they really wanted to mess bitcoin up just mine empty blocks then no one could get a transaction through...

With the current network hashrate? I believe empty blocks are rather something of luck and randomness?
Cause the fee system is flawed and they are attacking the flaws.
2 big pools that do not pay fees to miners is all you need to this attack.
And how long before those Big pools become small because different miners decided to move elsewhere, where they get paid?
