Utility: moved TypeTraits.cpp static assertions to tests.

It's not desirable to compile whole file just to check for two things
(which won't break too often).
Utility: brand new CORRADE_HAS_TYPE() macro.

Superseeds previous unprefixed HasType() macro, has proper documentation
and can be used for much more things.
Utility: test that IsIterable works for more container types.

It doesn't, as many containers we don't provide `const_iterator`
typedef or don't have begin()/end() members.
Utility: make IsIterable type trait more general.

It now works for all types with either begin()/end() members or usable
with std::begin()/std::end(). Hooray for printing Containers::Array and
std::valarray with Debug. The tests now pass again.
Utility: doc++