Break up message handling and frame parsing