Improve return_url behaviour and clean up controller filters

Closes #96

LGTM given by: @hampei

Squashed commit of the following:

commit 81fabf9534a5d3a6c7ba63850f3eb357dde7e350
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Tue Sep 16 14:31:42 2014 +0200

    Append Error to exception class

commit 770433c4918a1ebc25fc38f1fe976fc36d45e745
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 15:28:19 2014 +0200

    Consolidate controller errors

commit 205a9ff92d40b735879bde825655817c2c3383d5
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 15:12:27 2014 +0200

    Make session expiry uniform

commit 06c373dbb847294fce04e1609ca87729a2d72620
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 14:42:26 2014 +0200

    Use "go" instead of "action"

    Action is a reserved name in Rails, so this doesn't work that great...

commit 37ac70f4e61488b1e1658761e66d9fb732a3be7a
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 12:33:08 2014 +0200

    Rename authorize!

commit 037c451945c798822107a5a161b1884f818335bf
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 12:28:21 2014 +0200

    Facebook is blocked at the load balancer

    No more need for special code at this layer.

commit b4c8526c69a493be8a231c45a045e6bd522aead7
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 12:27:41 2014 +0200

    Use bad_questionnaire_definition for ValidationError

commit e6320bc522936326263298b5f85cda2089cef3a6
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 12:13:51 2014 +0200

    Change actions

commit 6ab2368c123fbba497ef1abb4f4493054e8ab879
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 12:11:08 2014 +0200

    Fail instead of raise

commit f9de3d6a15d064861ef5e311643acd0f0b00000e
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 12:10:23 2014 +0200

    Always return with status=='updated', put direction in 'action' param

commit b924223fdd5797e397e18502dbde76ca3a30ea6b
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 11:45:34 2014 +0200

    Return to calling app for any error

commit e0ca897d3e596334a2dc3c5a5a7e9844842a14ac
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 11:23:02 2014 +0200

    Rename roqua_redirect to return_url

    We’re not always used by RoQua, and that app is called ROM now anyways.

commit b212c203ee9aad86e97f25289b91de4a97cdca71
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 11:20:32 2014 +0200

    Prevent browser cache always

commit a426f07befae79e7a1054293206227277c41bc89
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 11:19:31 2014 +0200

    Move helper method to app controller

commit 307e60ebcc414b61cdef450a7300f5221e065a9c
Author: Marten Veldthuis <marten@veldthuis.com>
Date:   Mon Sep 15 11:17:23 2014 +0200

    Change ordering so that DB is only accessed after authorization is checked