More paranoia in L2 cache pipeline:
- In arbiter and response stages, clear entire packet instead of just valid field when no packet is available to prevent stale fields from being used
- Qualify dir_cache_hit signal by checking that the packet is valid (even though places that use it usually check redundantly)

Also fix an assert that was firing incorrectly in some cases (wasn't checking packet validity)
Cleanup. Use structure assignment form and change some names.