add requireLogin middleware
don't allow duplicate registrations
add flash alerts