refactored TypeExtensions for simplicity

I was pointed to this bit of code by @philippdolder (https://github.com/FakeItEasy/FakeItEasy/pull/106#issuecomment-17155635).

I wrote my own simpler version and I thought I'd contribute it back.

Of course, it could even be a one liner:

```C#
return type.IsGenericType
	? string.Concat(type.FullName.Substring(0, type.FullName.IndexOf('`')), "<", string.Join(",", type.GetGenericArguments().Select(arg => arg.FullNameToString())), ">")
	: type.FullName;
```

but that would sacrifice too much readability ;-).