I've used Drupal on countless projects, from simple ones to complex, and it's a software that would certainly meet your need. Save the $10k you'd have to pay to duplicate its function and start w/ what's already coded.
For Drupal, check out the
modules section; it has more functionality than you've probably even considered yet.
thx,
m