Add improved Dockerfile with wrapper script for seamless upgrades

This Dockerfile builds from the local Twister repository checkout. That means it can work as a [automated build](https://docs.docker.com/docker-hub/builds/), so every new commit on the repository will trigger an automatic build of a new docker image on the [docker hub](https://hub.docker.com/).

I already set up an automated build for my fork of twister-core. As soon as this PR is merged, @miguelfreitas could register at the docker hub and create an automated build for the master branch on the main repository (miguelfreitas/twister-core). So there will always automatically be a ready-to-run docker image for the current twister HEAD at the docker hub.

Quickstart (download and run Twister using a [pre-built image from the docker hub](https://registry.hub.docker.com/u/mazzolino/twister/dockerfile)):

    ./twister-on-docker run --remote 

This image uses a docker volume for storing twister's data in `~./twister`. Using the included wrapper script, this makes it easy to upgrade to a new master, while keeping the data:

    git pull
    ./twister-on-docker stop
    ./twister-on-docker build
    ./twister-on-docker run

(Note: This can still be improved to prevent twister downtime during build.)

This could solve #201 and #195, at least for Linux users (as docker is still not that easy to run on Windows/Mac).