HasValue for strings
basic form for initial app configuration, with lockout so it only runs once
whoops