add a BaseController class for devices controllers
change answer to get_answer_fn in device_manager

Remove the answer function from device_manager
Add the get_answer_fn function to device_manager

This change is required to set the callback function on the connection instance
to avoid querying provd too often