Move OCTClient categories into their own files, reorganize a bit

This makes the main `OCTClient` files a more reasonable size and forces us to think a bit more about where new methods belong.