[Stacked Bar] - Supporting stacking on negative values

Handles stacking by placing stacking negative values separately below 0 and stacking positive values separately above 0.

Closes #813 
add explicit typing to dataArray so its easy to see in the code what its structure is