enhance unsafe functions

Add Led.unsafe_light(), LedSet.unsafe_buffer(), LedSet.unsafe_set() and
LedSet.unsafe_light().

Use the unsafe functions to reduce code duplication and improve
factorization.
enhance, promote and rename compute_table()

Move Blinker.__compute_table() to Animator.brightness_table() and make it
static.

Remove unnecessary duplicate code remnants of Blinker.__compute_table()
and use Animator.brightness_table().
fix Board.led_set() and Board.buffer()

All leds were shifted, LED 1 was detected as LED 2, LED 2 as LED 3,
etc. This caused an IndexError when trying to use a LED set containing
LED 18.
Merge branch 'internals' into dev
bump v0.3.1

Release notes:
- fix the LED shifting bug in Board.led_set() and Board.buffer()
- minor edits
Merge branch 'dev' into animations