Sal, that's ironic, as my personal experience is that the OpenACS
codebase, particularly the Tcl layer, is fairly easy to modify. Are
you sure you're not just hitting the old, "starting over from scratch
seems like it would be more fun" programmer's bias?
I've many times had that "this is junk" feeling when staring at a big
pile of foreign code that I wanted to make do something new, but more
often than not, as I learned how it actually worked, I realized it
wasn't junk at all. Modifying and refactoring old known-working code
never sounds as much fun as writing something new "from scratch", but
it's usually the more effective approach. (You're unlikely to really
understand the problem until you've worked with the old code.) This
is only more true when the existing code is both battle tested and
friendly to modification, like OpenACS.
Taking a rather large toolkit like OpenACS, and then deciding to write
your own users table from scratch, is, as anything other than an
academic or tutorial exercise, a pretty strange approach. OpenACS's
single biggest strength is arguably its well thought-out data model,
so totally ignoring a core part of it like the users table makes no
sense.
You'd probably have been better off explaining what custom behavior
you want your site's "login and registration system" to have, and how
you're having trouble using OpenACS to do it. Since you didn't tell
anyone what your actual goal is, you're a lot less likely to get the
advice that would be most effective in solving your problem.