This CL contains testcase cleanup, tescase addition, added documentation, and an api fix.

BluetoothLeScanFacade was not treating the case of a single parameter
and only enforcing the optional parameter.
Fixed library path of ble_utils.py.
Added test_dual_scans to BugsTest for a stress case with a partner.
Fixed BeaconSwarmTest that wasn't trigering onBatchScanResults
because report delay millis was set to 0. Also added a loop to
trigger multiple onBatchScanResults.
Added new testcases to FilteringTest.
Changed all instance of string concatination using + to join.
Added documentation to UniqueFilteringTest.
Cleaned unnecesary wrapers in ble_helper_functions.

Change-Id: I157e8cec21d2fad7a76612bd4cf900c37fedf725
diff --git a/Common/src/com/googlecode/android_scripting/facade/bluetooth/BluetoothLeScanFacade.java b/Common/src/com/googlecode/android_scripting/facade/bluetooth/BluetoothLeScanFacade.java
index 9079a0d..d3e19e1 100644
--- a/Common/src/com/googlecode/android_scripting/facade/bluetooth/BluetoothLeScanFacade.java
+++ b/Common/src/com/googlecode/android_scripting/facade/bluetooth/BluetoothLeScanFacade.java
@@ -793,9 +793,13 @@
             @RpcOptional
             String serviceMask
             ) {
+        if (serviceMask != null) {
             mScanFilterBuilder
                     .setServiceUuid(ParcelUuid.fromString(serviceUuid),
                             ParcelUuid.fromString(serviceMask));
+        } else {
+            mScanFilterBuilder.setServiceUuid(ParcelUuid.fromString(serviceUuid));
+        }
     }
 
     /**