Resolve __random button selections only after all buttons have been selected

Fixes #1157.

Requires database update 01157_random_button.sql

http://jenkins.buttonweavers.com:8080/job/buttonmen-blackshadowshade/377/
I'm wary of this function (`resolve_random_button_selection()`): you never *unset* $game->isButtonChoiceRandom (database entry is_button_random), right?  So even if the random buttons have already been picked, you still run through this entire function.  It probably doesn't change the selection, but it does call load_game() and proceed_to_next_user_action().  So those functions are being called an extra time for games which ever had random buttons, every time anything happens for the entire duration of the game.  Maybe that's harmless, but why find out?  Can we simplify the system so that this function returns if all random buttons have been selected before it's called, even if the game was started with random buttons?