add marshalling to have a fully functional example.. now to do queuing