Merge pull request #13 from vitch/master

Scaling the video as it is drawn to the canvas.
bump version, code styling
Added a `stop` method.

The previously added `releaseVideo` stopped the video stream but didn't
clear up the timeout which loops the `_captureToCanvas` method.
Removed unnecessary code.

The outside catch does the same as the inside one so we don't need
nested try/catch blocks
No need to set a timeout if we can't get a video stream!
Adding the ability to select a source to capture from.

Use `qr.getVideoSources` to get a list of video sources and pass the
id of the source you are interested in to `prepareVideo`.

Conflicts:
	build/qcode-decoder.js
	build/qcode-decoder.min.js
	src/qcode-decoder.js
Updated the example so that you can pick from multiple cameras
if available on your device.

Also cleaning up a previously running videoCapture if you try to
start another...
Setting the canvas to the videos dimensions.

If you manually set the canvas dimension then there is an issue when
you switch to a camera which has a different aspect ratio (e.g. on
my Nexus 7 both cameras are portrait rather than landscape).

If you don't set the width and height that you are pulling from the
video then only a subsection of the video feed is scanned for QR codes
(see 39e7e0a36f76dbcf85cc37d6d45eb92cb409c059).

This seems to me to be the only way to deal with it although I now
wonder if you need to call prepareCanvas manually at all...