split of qmp stuff into its own file