Let's forget about stock data for a second and just discuss futures. So far, I took a look around and it's either completely useless for my needs or it's too expensive for personal use.
Who out there provides
(a) data per-contract, not that stupid "continuous contract" shit
(b) has top-of-book updates as well as trades (*)
(c) has data for at least last 5 years, preferably more
(c) is reasonably priced at tick level or fixed re-sample of "last" snapshot (**)
* seems like a few vendors I've spoken to only capture trades and ignore the book updates. It's fine for the regular quant type stuff, but if you are trying to do something in relative-value space, the data is of limited value
** for my needs, non-tick resolution data is ok as long as it is re-sampled consistently. E.g. if someone out there sells data that contains snaps of the last bid/ask/trade every time period, that would be good enough