I have implemented a dynamic timeout feature to avoid timeouts when printing large model

I have implemented a dynamic timeout feature to avoid timeouts when printing large model with long move distances. It now takes the estimated duration of the last X gcodes into account. Since the firmware buffer on my system is ~16 gcodes I decided to hardcode X=16.
Will do some testing and publish a new version soon.