some hacks with validation.  maybe look into web2py form validation again?