factored out the data context stuff in order to use it across both the WEB and the API projects