Finished Parsing Address, Implemented cache read now

I added a function that can break the address into its parts now.
The cache can now find the read hits but doesn't do anything when
it finds one, yet.

I rearranged some of the data structure names so they describe their
function better. Specifically, the number of sets and the blocks per
set are fixed now.

I set each data structure to have default values when they are first
initialized.