Getting ready for some mocha tests
Initialization tests
jshintrc for tests
Removed boilerplate html page
Gave in and exposed state to aid in testing

Originally the code was written to keep the data as close as possible
to the execution to try and eke out a bit more performance.  Though
there were likely some small perf advantages, unit testing would have
been next to impossible.

The danger is that now the internal state is now exposed as well.
State is not an interface!  It can/will change.
Renamed implementation methods with _xxx
minor: add afterEach to globals for jshint
Add bind support to phantomjs with MDN polyfill

PhantomJS currently uses Qt4’s version of webkit - bind is supported in
Qt5.

See: ariya/phantomjs#10522
Added mock for scrollView and itemContainer

Also plumbed it in for constructor testing
constructor tests
Bind to this for access to current instance properties
If template is a doc fragment, get its first child

If the caller passed in a document fragment for a template, we need to
grab the first child (litelist templates must have a single top level
parent) so that we can position it later.
Refactor position logic out of create view item to ease testing

Fewer side affects during _createViewItem
Return the appended node to match the DOM api
Fix: subsequent test cases added a div each time

Check if the template is already setup and skip if it is.
Fix: needed ceil/floor in calculations
Basic tests for _createInViewObj