Add HTTPActor & logging, refactor TCP socket handling into TCPStream trait