I've uploaded the following file to demonstrate...
something... or just
to show off, I don't know...
Quite impressive. Let's see how long it takes you to actually implement
:-). Some notes:
1) You'll need some capability for banning signed in users. Having bans
expire after a while would be nice, too.
2) New message notification needs to work for all users, not just signed
in ones. In Phase III we use a table that stores IP addresses of users who
have new messages.
3) Currently talk pages and normal pages are "bundled" when watching: You
watch one, you also watch the other. You remove one, you remove the other.
This behavior should not change.
4) While you're at it, you may want to think about a better access rights
system than simple sysop/non-sysop. ACLs would probably work best.
As for the userprops, having a langid column seems to make the most sense.