Add better error reporting around tunnel & add specs for it.
Merge develop onto master