Merge FifoCommandRunnable into Decode

No idea if this change is desirable.
Or to get the same behavoir as the old implementation, you could just add a second parameter to Decode which enable the bound checks.