Addd shared mediator classes for asynchronous call/response events between unrelated objects. Adds test cases for submitting fruit from the gui to the bl layer and receives a response asynchronously.