Grunt jasmine tests
Operator precedence

Python differences from JavaScript:
'or', 'and', 'not' keywords instead of symbols
No '++' or '--'
Unary and binary operators are intermingled, instead of unary > binary
precedence
x**y (exponentiation) doesn't exist in JS, replace with Math.pow(x, y)
x//y (floor division) don't exist in JS, replace with Math.floor(x / y)