Decent Changes to interfaces and supporting code