These methods provide a less verbose way of allocating StorageLocations and
Values than the existing takeOwnership(make_unique(...)) pattern.
In addition, because allocation of StorageLocations and Values now happens
within the DataflowAnalysisContext, the create<T>() open up the possibility
of using BumpPtrAllocator to allocate these objects if it turns out this
helps performance.
Would emplace back work? That returns a reference to the just emplaced element saving us the call to back making the code a bit more concise.