re-organize dependencies and change most to be scope provided.