various front end fixes and validation