html5 validation. closes #2