This is more of a question as I find it very confusing.
The browserstack.tunnel setting is not mentioned in this API docs, however it is mentioned in http://www.browserstack.com/automate/capabilities-and-timeouts.
When I don't set it, my tests seem to run fine (using tunnel), only the web UI shows "tunnel false".
When I set it to false, than the tunnel does not work (even though the tunnel is established).