Source is one of the the worst options you can go with since big open worlds are a big nono, it can be cheated to a certain degree (as Archie suggested with fog for example), but if you look at all the HL2 open maps they have a clear entry and exit point, usually a zigzag pattern path so that you would not see the end of the level before the transition happens.
It may be possible to do it in a grid like structure with loading the required map if a player moves one grid up/down etc... I've been toying around with this idea for a long time, but never got around to testing it. However even if it works there's still the problem of the view distance and ability to see the end of each level. Fog can only go so far.
I don't think Source supports or could even support preloading levels, since maps are BSP trees its pretty complex to manipulate them w/o causing issues for the renderer.
I wouldn't recommend going with Source or any other Quake type engine for this reason.