Change unit testing to use node.js instead of Rhino.

See http://about.travis-ci.org/docs/user/languages/javascript-with-nodejs/
objects for loop performance optimization (http://jsperf.com/object-keys-vs-hasownproperty/4)
add performance.now to entropy after load.
add keyboard and devicemotion to entropy.
split encrypt/decrypt methods into two pairs: actual encrypt/decrypt + json encode/decode
revert performance optimization fix
Merge pull request #110 from lgarron/node.js-tests

Change unit testing to use node.js instead of Rhino.
addTimeToEntropy function.
Merge pull request #118 from bitwiseshiftleft/feature/performance_now_entropy

add performance.now to entropy after load.
keypress for ie8.
Merge remote-tracking branch 'origin/master' into feature/entropy_motion_keyboard
typo.
Merge remote-tracking branch 'origin/master' into feature/entropy_motion_keyboard
addCurrentTimeEntropy for all event listener.
added a guard for setDefaultParanoia(0).
keypress add time to prevent side-channel attacks.
comma. compiled version of sjcl.js
fix all jslint errors.
move predef to global comment.
docu updates. restructured ecc.js.