update navigation push/present methods to return the new web controller instance

This allows the reference to the new web view controller to travel
through the JS bridge to easier support unit testing. JavaScript API
consumers can ignore the return value.