bar data, support for names
fix more implicit stuff, refactor to global, rename a few methods, still untested