Approximation Algorithms for Dynamic Storage Allocation