We've also talked about cleaning this up. The cleanup we have done already is fine with me if the API signature doesn't change (even though I think it should, ultimately it's your call).