Yeah, I think it's an overly complicated API.  Let's keep it simple.