added start-stop, bit of refactor