Added JSON Array support, with error logging

Error logging adds entries to the log4net handler, an example:
2014-06-22 11:16:23,022 [6] ERROR
nuComponents.DataTypes.Shared.JsonDataSource.JsonDataSourceApiController
- [Thread 25] Error getting data
Newtonsoft.Json.JsonReaderException: Additional text encountered after
finished reading JSON content: s. Path '', line 1, position 43.
at
nuComponents.DataTypes.Shared.JsonDataSource.JsonDataSourceApiController.GetEditorDataItems(Int32
contextId, Object data) in
c:\Users\Stephen\Documents\GitHub\nuComponents\source\nuComponents.DataTypes\Shared\JsonDataSource\JsonDataSourceApiController.cs:line
38
at lambda_method(Closure , Object , Object[] )
at
System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass13.<GetExecutor>b__c(Object
instance, Object[] methodParameters)
at
System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.Execute(Object
instance, Object[] arguments)
at System.Threading.Tasks.TaskHelpers.RunSynchronously[TResult](Func`1
func, CancellationToken cancellationToken)

Also added a helper class to contain helper methods