First stab at a NuGet package solution; todo: need to break up into 5 NuGet packages (Core, Common, Extensions, Web, combined)