Add API + tests for Swarm

Same here, don't default it to None.