removed dependency for double, merged port handling structures, cleared up to implement the rationale setter/getter