in reply to replace object methods at runtime

You're looking for Class::MOP and, generally, Moose.

My criteria for good software:
  1. Does it work?
  2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?