Build args shouldn't ignore `--clean` and `--full`

Also, if no build arguments are provided, default to `--full`
Not much. I've been toying around with different styles for calling async. The problem with Future.sync is that if you have a lot of them nested, you can get what looks like synchronous code executing potentially CPU intensive operations and not yielding to the event loop. `new Future.value().then(` will always yield to the event loop.

`account_services.hashEmail` from the backend is a rather inert example of this.

In the code here it (obviously) makes no difference either way which method you use.