Designing C-meter, 8-9 precise digits
I know there is a DIY uC design that does it both ways you suggest above:

Elmcie LC meter

it has the unknown C (or L) as part of an oscillator for the smaller range, and for larger capacitance it charges with constant current and measures time.

However the pro meters usually (I think from what I have seen/heard/read) use a different technique - roughly, they put a very clean accurate sine through the unknown as part of a LC filter and then measure the phase change. I had a great paper on the design of of one of these that involved an FPGA, but I can't seem to find it.. If I do manage to I'll add it afterwards.

Anyway I think for small pF measurements the oscillator method should achieve around/under 1pF resolution, and will be the easiest to make yourself.  

Note, there is a boring option, which is buy a dedicated IC, a few available and found on Digikey, Farnell etc. Add multidigit display (should have BCD output) and you're done. I think many(most?) multimeters use them.

EDIT - I think relative accuracy of 8-9 digits will be pretty much impossible to achieve. Even the most advanced LCR meters from e.g. Agilent E49840A (~£10k to buy) will "only" achieve measurements of around a femtoFarad maybe 100aF, and from what I can see relative accuracy is in parts per million. I wouldn't like to try and calibrate one of those things :-)  

I think trying to make one of these would probably be nearly as involved as making say, a Lecroy Wavemaster scope. A lot of money, people, and research needed. Maybe you could talk to some test equipment experts and see what they think is possible though.