Add separate span for FontAwesome icon so buttons look better in Firefox

Noticed today on Sal's computer (in firefox) that by applying the icon-* styles directly to the button, the button text is rendered in a serif font that looks wrong.

Test plan: Load test.html and inspect the DOM to verify the spans are in the right place.

Auditors: alpert, alex