clean (cleanOptions) {
        const self = this;
        // This will lint, checking for null won't
        if (typeof cleanOptions === 'undefined') {
            cleanOptions = {};
        }

        return require('./check_reqs').run().then(function () {
            return require('./build').runClean.call(self, cleanOptions);
        }).then(function () {
            return require('./prepare').clean.call(self, cleanOptions);
        });
    }
Cleans out the build artifacts from platform's directory, and also
cleans out the platform www directory if called without options specified.

@return  {Promise}  Return a promise either fulfilled, or rejected with
  CordovaError.