lotsa refactoring, async loading stuff