GENERATORS: Move Sin helper in its own file

Now it is an actual generator deriving from the common interface.

Signed-off-by: Gama <misept.dieseneuf@gmail.com>
MISC: Add a real-time output based on PyAudio

Still very crude, but works anyway.

Signed-off-by: Gama <misept.dieseneuf@gmail.com>
UTILITIES: Fix bug with overflowing PCM data

When the generated float signal was exactly equal to 1.0f, it lead to
the PCM value being 32768 e.g. -1
Scaling now fixed.

Signed-off-by: Gama <misept.dieseneuf@gmail.com>
UTILITIES: Add a Chrono class and a timing decorator

Signed-off-by: Gama <misept.dieseneuf@gmail.com>