refactor our libcore cruft. as much as possible at least.