Block: remove unnecessary typename for an iterator

std::vector<Source>::iterator does not need an extra typename.
Having it will break the build for VS2013.
[win] VS2013 doesn't support noexcept. Workaround that.

Oh boy... ;-)