Restore timeout feature

PR opened for discussion. Work in progress, do not merge atm.
I'm experimenting.. 20 seconds is too high, I know, I'm working with a value of 8 seconds.. consider that some external libraries add some delays and we should consider them, also execution take some time.. we will allow serial manager to throw timeout exceptions again but we'd better use a timeout value higher than 1 second.. I think that a value between 5 and 8 is enough..