Add 'Scan QR Code' as top level action

The data from the QR code is then parsed as a URL and the appropriate
guide is opened in GuideViewActivity.
Use reflection to open barcode scanner

Otherwise the code doesn't compile for apps hat don't have the barcode
scanner because the dependency isn't specified.
Fix barcode scanner flavor dependencies

You must specify "{flavor}Compile" to compile it only for that flavor.
Otherwise it will be included for all flavors.
Use reflection for barcode result parsing

Now the code can handle the missing dependency.