Implement simple foreground/background color scoping via IDisposable

Just a simple API evolution that allows the developer to "scope" his color updates. Can be used like that :
```csharp
static void Main(string[] args)
{
    Console.WriteLine("Default");
    using (Console.UseBackgroundColor(ConsoleColor.Red))
    {
        Console.WriteLine("Background red");
        using (Console.UseForegroundColor(ConsoleColor.Green))
        {
            Console.WriteLine("Foreground green");
            using (Console.UseForegroundColor(ConsoleColor.Yellow))
            {
                Console.WriteLine("Foreground yellow");
            }
            Console.WriteLine("Foreground green");

            using (Console.UseBackgroundColor(ConsoleColor.Blue))
            {
                Console.WriteLine("Background blue");
            }

            Console.WriteLine("Background red");
        }
    }

    Console.WriteLine("Default");
}
```

And outputs like that :
![image](https://cloud.githubusercontent.com/assets/1341236/5394321/69d6a080-813c-11e4-95e9-98856de8555a.png)