first nearly perfect working code;
fixed mutex problem (SPI) between interrupt and normal program flow but it still needs improvements!
added support for non blocking usart transfer;
divided state machines in RX & TX;