Providing more control over how can.view resolves templates

Proposal to resolve #314 

There is one breaking API change here which is not performing an AJAX call when a `#` is in the provided URL. But the rest of the fix would be new API that is backwards compatible. 

To get this into a minor release (before 3.0) we could remove the breaking change and add it later.