Yeah, this really sucks. In the relatively near future (i.e. before 1.0) I want to formalize all of Batman's built in data structures and clean up the implementations where relevant.