Added user registration and vanity URLs. Super ugly code. QQ