Refactored: each data type has its own access method on the ViewTable.

Since we are dealing with a limited number of data types and we want to
keep the view table lean and fast, this is the simplest way of
implementing the add, update, get functionality. I will look at
refactoring this later to see if some type of generic approach can be
used - currently I think generics will just add complexity and we are
not really "generic" since we do care about what type  something is.