The Bills' roster and cap situation is rather unique in that it has a very low amount of $$ allocated to the QB position. So if you factor in the fact that Tyrod is playing for $1M or whatever, I think it justifies a higher-than-normal allocation of cap dollars to other positions, including running back.
That said, putting aside his contract number, I question Shady's fit for Roman's offense. Seemed to me that Karlos and Gilleslee ran Roman's plays just as well, if not better than Shady. And I'm a HUGE fan of the Jon Williams pick and I think he too will thrive in Roman's offense. So I'm not sure we need Shady at all (I know it's sacrilege, but I'd much rather have a playmaking linebacker who can defend the pass well...)