messages: factor out gateway messages and add full fill reporting and settlement message