added some long-overdue html5 goodness