Derived completion in general

Haven't completely worked out the details...