Implemented SetMux function to use existing muxer with API.
Implemented support for muxers other than http.ServeMux by adding an APIMux interface which muxers have to implement.
Merge branch 'set_mux'