So the bottom line is that yes, Maxwell's demon can take a high-entropy situation (like two containers of gas at the same temperature) and turn it into a low-entropy situation (the two containers have different temperatures). The first law is not violated - the total energy of the gas in the two containers is the same before and after. The second law is not violated - the lowered entropy of the two gases is more than offset by the increased entropy of the demon.
The lowered entropy (different temperatures) of the two gases can now be used to run an engine for a little while, until the temperatures are equal again (but lower than before). Then the demon can lower the entropy again, getting different temperatures again, which can then run the engine again for a little while (not delivering as much energy as before, because of lower temperatures). This could go on and on, but you could never get that engine to produce more energy than the amount of kinetic energy in the original gases.
The thing about the cannonball gas is only that there is a lot of energy there to be converted (the cannonball-gas temperature is so huge and there's a mole of cannonballs).
Is this right?