Added a page to display buttons and sets

Resolves #912

http://jenkins.buttonweavers.com:8080/job/buttonmen-AdmiralJota/342/

This also involved tweaking the python client a bit, so that should be tested too.
Hmm, wouldn't that just lead to an "implemented" button which is missing a die?  I mean, we'll see the log message eventually, so it's not the end of the world, but maybe we should call the button unimplemented in the case in which a die raises an error too, and the difference is just whether we bother to log an error message about it?