Register user

Just look at that background image! We Need it in master!
Also, some simple error handling, and other less interesting stuff.