Html5validation Improvements

This improves the performance of the html5 validation by checking for supports once at init rather than on every click event.

This also fixes a bug where the form would not continue after correcting an invalid input.  The solution is to explicitly clear any existing validation error before testing again.