move SILICIUM_OVERRIDE from override.hpp to config.hpp
add utility.hpp that includes very general, small headers