another round of changes, all but http stuff seems to at least *compile* now