Refactor blink command

Manage type of command inside of BlinkCommand (via BlinkCommandType enum and a constructor)

This is a first step to remove access to internal  byte[] 'command' to concrete class. (but I should admit that I don't yet know what the next step is).

All of these has been done pairing with @ludopradel. Thanks !