updated everything except context to using bid and request smart pointers
exchange context can now correctly query resources based on commodities. great success!