It is called in numerous locations but the only place it seems that it needs to be called is in isBrowser(). I prefer to lazy load it. So remove it from everywhere else.
The only place that I can see that would need to be fixed would be Debug.class.php:
$this->_system['browser'] = $context['browser_body_id'] . ' <em>(' . implode('</em>, <em>', array_reverse(array_keys($context['browser'], true))) . ')</em>';
Also, any place where isBrowser($browser) is used, they should be changed to $browser->is$browser() and isPossibleRobot() should be added to the class