Fix invalid usage of Math.floor() + simplify code

First:
Math.floor(3.2) -> 3
Math.floor(3.7) -> 3
Math.floor(-3.7) -> -4
Math.floor(-3.2) -> -4

Second:
3.2|0  -> 3
-3.2|0 -> -3

So, behaviour of these approaches are DIFFERENT on negative values. So:
http://stackoverflow.com/questions/596467/how-do-i-convert-a-number-to-an-integer-in-javascript

src/analyzer.c: simplified code.
src/library.js:
* Simplify code, potentially fix bugs with negative time values in many places.
* Simplify code for trunc()
* FIX bugs in handling of negative numbers in modf(), modff() and div()

Simplify code for other functions where we need integer part of floating-point number.
fixed here and in other places. new tests still passed