Expert signup

Safer to use StringUtils.hasText() as Postgres can store zero-length strings