TIMOB-8924 BlackBerry: setter methods crash runtime

CHANGE LOG
- changed Ti8Event to use a context scope before calling JavaScript

TEST CASES
- build tibb
- build tibbtest
- deploy tibbtest on simulator
- push button in demo
- application should not crash
Modified framework to use TiObject to pass values to native objects

CHANGE LOG:
- ran formatter
- modified native classes to pass TiObject references
- added methods to convert V8 values to native values
- changed button property to use 'title' as opposed to 'label'

TEST CASES:
- build tibb
- build tibbtest
- run tibbtest on device
- button, label, slider, and progress bar should appear
Changes made based on code review
TIMOB-9014: BlackBerry: Add BlackBerry to drillbit test harness app

[Issues Fixed]
TIMOB-9014: BlackBerry: Add BlackBerry to drillbit test harness app

[Changed]
tiapp_harness.xml
- added blackberry xmlns

blackberry.js
- function installTestHarness
  - added suite parameter
  - call launchTestHarness
- function launchTestHarness
  - added suite parameter
  - build, deploy, and run the test_harness app
- function runTestHarness
  - pass 'blackberry' to handleTestError
  - set the status to Running
  - pass the suite parameter

drillbitmodule.js
- function initPlatforms
  - fix getting the env vars
- function handleTestError
  - added parameter platform and use 'android' as the default for backwards compatability

blackberryndk.py, builder.py
- use return code

[Tests]
Test 1: Run drillbit
1) Build tibb
2) change simulator IP in builder.py
3) Run scons to build the mobile sdk
4) Run the following command:
drillbit\drillbit.py --platforms=blackberry
5) Verify the tests are shown
6) Click "run tests"
7) Verify the test_harness app is build and deployed
Note: the BlackBerry tests will not complete because communication with the simulator is not implemented
TIMOB-8783 BlackBerry: Implement Global APIs Part 1

Reviewers: Harut, Alex

This patch adds all the stubs for all the methods and objects in the Global Namespace

Changelog:
- Add global methods to the root object
- Add String and JSON objects to the root object
- Removed unnecessary forward declaration in TiUIObject

New files:
- blackberry/tibb/TiJSONObject.cpp
- blackberry/tibb/TiJSONObject.h
- blackberry/tibb/TiStringObject.cpp
- blackberry/tibb/TiStringObject.h

Tests:
- Build tibb and tibbtest for all targets except for Device-Release as it is currently broken
Made changes based on code review
fixed formatting and change the != to !==
Changes from code review
Merge pull request #48 from dlifshitz-maca/TIMOB-9014_02

TIMOB-9014: BlackBerry: Add BlackBerry to drillbit test harness app

[Issues Fixed]
TIMOB-9014: BlackBerry: Add BlackBerry to drillbit test harness app

[Changed]
tiapp_harness.xml
- added blackberry xmlns

blackberry.js
- function installTestHarness
  - added suite parameter
  - call launchTestHarness
- function launchTestHarness
  - added suite parameter
  - build, deploy, and run the test_harness app
- function runTestHarness
  - pass 'blackberry' to handleTestError
  - set the status to Running
  - pass the suite parameter

drillbitmodule.js
- function initPlatforms
  - fix getting the env vars
- function handleTestError
  - added parameter platform and use 'android' as the default for backwards compatability

blackberryndk.py, builder.py
- use return code

[Tests]
Test 1: Run drillbit
1) Build tibb
2) change simulator IP in builder.py
3) Run scons to build the mobile sdk
4) Run the following command:
drillbit\drillbit.py --platforms=blackberry
5) Verify the tests are shown
6) Click "run tests"
7) Verify the test_harness app is build and deployed
Note: the BlackBerry tests will not complete because communication with the simulator is not implemented
Changes based on code reviews
- Removed check for NULL obj - the obj parameter will never be NULL because it's checked in TiObject.cpp on line 281
- Changed onValueChange to send VALUE_MODIFY_IGNORE up the call chain
- Fixed formatting issues
Merge pull request #51 from jpl-mac/timob-8783

TIMOB-8783 BlackBerry: Implement Global APIs Part 1
Merge branch 'blackberry' into TIMOB-8924
Merge pull request #42 from dcampbell-macadamian/TIMOB-8924

TIMOB-8924 BlackBerry: setter methods crash runtime
Merge branch 'blackberry' into TIMOB-8972
Merge pull request #45 from dcampbell-macadamian/TIMOB-8972

TIMOB-8972 BlackBerry: Fix problem with passing complex Titanium objects to Cascades
TIMOB-8825: BlackBerry: Implement UI.OptionDialog

ChangeLog:
- Initial implementation of OptionDialog (Native DropDown) module and
  methods: show, hide.

Reviewers: DavidC, HarutM

Test Cases:
- Build tibb.
- Build tibbtest.
- In the java script, instance optiondialog object on some event.
- Show optionDialog.
- Make sure mentioned methods work.
TIMOB-8825: BlackBerry: Implement UI.OptionDialog ver2

Reviewers: DavidC, HarutM

ChangeLog:
- Implemented title property, setter/getter for that property
- Added NativeOptionObject class, describing native Option class

PR Link: https://github.com/Macadamian/titanium_mobile/pull/49

Test Cases:
- Build tibb.
- Build tibbtest.
- In the java script, instance optiondialog object on some event.
- Show optionDialog.
- Make sure mentioned methods work.
TIMOB-8825: BlackBerry: Implement UI.OptionDialog ver3

Reviewers: DavidC, HarutM

ChangeLog:
- Implemented options, selectedIndex property, setter/getter for that
  property
  - Added event handler mechanism for option click.

Test Cases:
- Build tibb.
- Build tibbtest.
- In the java script, instance optiondialog object on some event.
- Show optionDialog.
- Make sure mentioned methods work.
Added new defines for properties
Made property setters and getters more generic

Conflicts:

	blackberry/tibb/NativeContainerObject.cpp
	blackberry/tibb/NativeObject.h
	blackberry/tibb/TiObject.h
	blackberry/tibb/TiPropertyGetFunctionObject.cpp
	blackberry/tibb/TiUIBase.cpp