<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def remove_storage_controller(self, name):
 """Removes a storage controller from the machine with all devices attached to it. in name of type str raises :class:`VBoxErrorObjectNotFound` A storage controller with given name doesn't exist. raises :class:`VBoxErrorNotSupported` Medium format does not support storage deletion (only for implicitly created differencing media, should not happen). """

        if not isinstance(name, basestring):
            raise TypeError("name can only be an instance of type basestring")
        self._call("removeStorageController",
                     in_p=[name])