GetDataContext with runtime resolution path.

This allows the runtime context to use a different resoultion path to
the development context used in the type provider.
Merge pull request #54 from Frassle/ContextCtor

GetDataContext with runtime resolution path.
Add locks to GetColumns.

In relation to issue #52. Adding locks to the GetColumn calls that are
used to preload the columns seems to solve the immediate thread safety
issues I was hitting.