world: implement block form. Material is now private, access via world methods