Validate document update stats

This adds two new metrics about counting validation rejections and the time was spent on running vdu functions. The reason for each inside commit messages.
I'd say not in the request_time case given how much code is between start and end. here we can do `{Duration, Ret} = timer:tc(Fun)`. 

I'd even go as far as adding a function for this in couch_stats (which would call timer:tc) so we could simplify this (and future such stats) to `couch_stats:update_histogram([couchdb, query_server, vd_process_time], Fun)`.