refactor: pull Server out, introduce SwiftServer