public function addToBar(array $item, $name = 'default', $first = false)
    {
        // check if the name exists in the bar array
        if (!array_key_exists($name, $this->bar)) {
            // add it if it doesn't exists
            $this->bar[$name] = [];
        }

        // check if we are forcing the item to the start
        if ($first) {
            // add the item to the start of the array
            $this->bar[$name] = array_merge([$item], $this->bar[$name]);
        } else {
            // add the item to the end of the array
            $this->bar[$name][] = $item;
        }

        return $this;
    }