fix tests, change non-matching url behaviour, improve function lookup

Hi Jim,

I've started using rxq on a new project and have made some changes that thought might be worth merging back in. 

I've updated to the latest xray, and fixed the tests - some of them seemed to be out of date, for example the fn signature of rxq:rewrite-options was wrong.

Urls that don't match a route now look for main modules or return 404 if not found. This allows "normal" main modules to co-exist with rxq. 

Functions had to be declared with the namespace prefix or the function lookup would fail. I've changed the params to send the namespace and local name separately to be more robust.

I could split them up into different pull requests if it's too much in one go, let me know what you think's best.

Cheers
Rob