Start of some significant performance improvements.
Unit tests for interpolation result parameters.

Also add a scratch variable for BoundingSphere.fromPoints, which was previously missing.
Improve billboard performance and memory churn.

Rather than push billboards onto billboardsToUpdate and then throwing away the entire array every frame, this maintains a long-term billboardsToUpdate array and simply tracks the current index.  This reduced GC churn but also turns the push into an index assignment, which is faster.
Remove obvious duplicate computation ni isAvailable.
Update billboard buffer usage heuristics.

Apps that use mouse over picking would see performance issues when using a large number of billboards.  This was the result of computeNewBuffersUsage being called during pick, which would result in all usages being set back to STATIC_DRAW and the VertexArrayFacade being recreated every time the mouse moved.  This changes it so we don't call computeNewBuffersUsage on pick passes.

Also, we no longer reset usage properties ever pass, which could result in ping-ponging, instead, we only reset them when we are recreating the vertex for other reasons, such as billbarods being added/removed.
Don't zero out frustomCommandList every frame.

In Scene.js we were binning different commands into FrustomCommandLists
and then setting the array length to 0 every frame.  Instead, we now use
an index variable to track where we are in the commands and simply set that
to zero, reusing the previous array.
Merge branch 'master' into performanceTweaks
Changes after review.
Fix typo resulting in failing test.
Merge pull request #622 from AnalyticalGraphicsInc/performanceTweaks

Simple but effective performance improvements