added error() for prints, check if we already added it before we add it
must_print for error/warnings that must be printed
things that need to be done
If surface is balnk default to Dirt
set same_surface to return a previous entry with the same surface type
comma
we area already an entry, data is local
index all fields
count is a named argument
average with a moving average