fix display of radio buttons on narrow screens

use float and margins to make the label always display to the right of
the radio button even if the text wraps
fix table question layout on mobile

uses idea from
http://css-tricks.com/examples/ResponsiveTables/responsive.php to rotate
the table content and put the headers back in using :before which is a
bit laborious but does avoid the tables blowing out the side of the
screen and being hard to use.