Take a look at Lars Pinds homepage at
http://pinds.com .
Lars' site is an excellent example of a personal site constructed with OpenACS. It's feature set is similar to that which you seek and the code that drives it is available from his site.
Regards,
/Wally