restructed even further, minor rewriting to hsfs, intro