resolves #220 resolves #216 resolves #210 
#220 -> registerUser function have one more parameter deviceId. This
parameter value is "ANDROID_ID". So that we can understand which device
is sending request easily. 
#216 -> test code is written for registration when user uninstall and
installs app. Take a look at the cases
ApplicationTester.testRegisterUserWithId()
#210 -> registation status to server is stored in a preference. If it is
not registered to server successfully, it tries to register again

Signed-off-by: mekya <ahmetmermerkaya@gmail.com>
Merge remote-tracking branch 'origin/master'

Conflicts:
	ButterFly_Red5/src/org/red5/core/IWebService.java
	ButterFly_Red5/src/org/red5/core/dbModel/GcmUserMails.java
	ButterFly_Red5/src/org/red5/core/dbModel/GcmUsers.java
	ButterFly_Red5/src/org/red5/core/dbModel/RegIds.java
	ButterFly_Red5/src/org/red5/core/dbModel/StreamViewers.java
	ButterFly_Red5/src/org/red5/core/dbModel/Streams.java
	ButterFly_Red5/src/org/red5/core/manager/UserManager.java
	ButterFly_Red5/src/schema.ddl
	ButterFly_Red5_Tester/src/tests/unit/ApplicationTester.java
	Butterfly_JavaCV/src/com/butterfly/message/CloudMessaging.java
Signed-off-by: mekya <ahmetmermerkaya@gmail.com>
Merge branch 'master' of https://github.com/ButterFly-Broadcast/butterfly.git