Add explicitCast helper to std.conv

Makes possible to define more restricted cast that won't accidently
result in broken behavior during refactoring.

As discussed in http://forum.dlang.org/post/m7datc$2p31$1@digitalmars.com
Is it worth adding a constraint like `is(cast(To)value)` so if the value can't be casted, the error won't come from inside the function?