Separate default values from API methods

Allowing utilisation of cl context defined elsewhere as a method parameter.
However, default values can be initialised if wanted.
Enable creating a separate KernelManager with own context and device array.

* Adds KernelManager into webcl namespace
* Implements getContextDevices method
Add platform initialisation into Xflow Graph

* Implements platform initialisation into Xflow Graph
* Initialises JS platform by default, uses WebCL platform if available
* Platform is defined in Xflow Graph namespace
Use platform defined in Xflow Graph instead of Xflow.platform
Fix problem in createCommandQueue with the current Nokia WebCL plugin

Fixes a problem that causes an error when creating a command queue.
Add fallback to JS platform when a platform specific operator is not available

Adds a fallback logic to the channel node that tries to search Xflow operators
using JS platform if there are no operators implemented for the current active
platform.
Enhance initial WebCL initialisation in the Xflow Graph
Improve platform selection in the ChannelNode

* Adds a function for updating platform when synchronizing the
ChannelNode
* Simplifies the getting/passing of the platform information by
shortening the prototype chain
Add multiplatform support related to the Executer creation

Adds multiplatform support into the ProcessNode related to the Executer
creation.
Fix a bug that prevents setting platform information in ChannelNode
Add a CLProgram prototype stub

Adds a CLProgram prototype stub code (currently identical with
the SingleProgram). The WebCL operators will utilise CLProgram in
processing.
Add WebCL platform support into createProgram

Xflow.createProgram will now create a CLProgram instance if
an operatorList utilises the WebCL platform.
Add TODO message into Xflow Graph
Add cl context passing trough executer to CLProgram
Remove unnecessary code from CLProgram and add CL context
Add a reference to the WebCL API into Xflow cl wrapper
Add first dynamically working version of CLProgram

* WebCL operators completely integrated with WebCL API. No WebCL or
WebCL API calls required outside of Xflow architecture.
* Kernel code generator automatically adapts to Xflow operator
inputs/output parameters.
* Only main logical part of kernel code are required in the WebCL
operator.
  * This limits some of the processing possibilities provided by WebCL,
but reduces potentially unsafe/crashing operations and makes defining
Xflow WebCL operators easier.
Fix a bug concerning creation of helper input params

Fixes a bug that causes corruption in output data.
Fix problems with different platforms when creating a program

* Makes the platform related functions to behave correctly with GLSL,
CL and JavaScript platform
* All Xflow tests should now pass properly
Add support for changing texture entries in CLProgram

* Fixes problems with video input