Use request object where needed
Do not push if not configured to do so

Otherwise we're showing error message for something user had not
explicitely ask for (issue #227).
Do not try to show message if not run from request

In some cases, do_push is called with None as request object (eg. from
admin tools) and we should not fail in this case (issue #227).
Pass on request object to do_update from admin interface