def remove_collection(self, first_arg, sec_arg, third_arg, fourth_arg=None, commit_msg=None):
        """Remove a collection
        Given a collection_id, branch and optionally an
        author, remove a collection on the given branch
        and attribute the commit to author.
        Returns the SHA of the commit on branch.
        """
        if fourth_arg is None:
            collection_id, branch_name, author = first_arg, sec_arg, third_arg
            gh_user = branch_name.split('_collection_')[0]
            parent_sha = self.get_master_sha()
        else:
            gh_user, collection_id, parent_sha, author = first_arg, sec_arg, third_arg, fourth_arg
        if commit_msg is None:
            commit_msg = "Delete Collection '%s' via OpenTree API" % collection_id
        return self._remove_document(gh_user, collection_id, parent_sha, author, commit_msg)