There's currently a lot of ambiguous overlap in the capped and non-capped collection code. Reading through the allocate/delete/overrun logic can be quite time consuming. There are also various portions of the storage system which have multiple branches of logic specifically to deal with capped collections, which may not need to be there.
It might be worth considering any future use-cases, like SERVER-2654.