Use curl for fetching the toolbar and log errors

This refactoring includes three mayor pieces of work:

Uses curl. It allows setting timeouts to prevent website being locked up and crashing due to network outages.

Logs errors to the SS_Log with the error so we can trace where, why and what happened it the toolbar doesn't show

Transformed the class that provides the $GlobalNav template var from a TemplateIteratorProvider into a
GlobalTemplateProvider since the toolbar nav doesn't change inside a loop.
that curly should be on the same line, I don't think you need to bring across the existing function docs either