public function remove($handle, $type = null)
	{
		if (!$type) {
			// try and find the right type
			$script = false !== array_search($handle, array_keys($this->assets['script']));
			$style = false !== array_search($handle, array_keys($this->assets['style']));

			if ($script && $style) {
				// found handle in both types
				throw new \RuntimeException('Asset with handle "' . $handle . '" found in both script as style type.');
			} else {
				$type = $script ? 'script' : 'style';
			}
		}

		if (isset($this->assets[$type][$handle])) {
			unset($this->assets[$type][$handle]);
		}

		return true;
	}