the maxmiun of M is2.
first, we prove $S_n >2S_{n-1}$.
(i)$S_1=3,S_0=1$, ;
(ii)if $S_k >2S_{k-1}$, then
from $a_0+a_1+...+a_{n-1} \ge 3 a_n - a_{n+1}$,we have
$S_{n-1} \geq 3(S_n-S_{n-1})-(S_{n+1}-S_n)$
which means$S_{n+1} \geq 4S_n -4S_{n-1}$
so $S_{k+1} \geq 4S_k -4S_{k-1}\geq 2S_k$
from (i)(ii), for any $n$, $S_n >2S_{n-1}$
$\therefore a_{n+1}-2a_n \geq a_n -S_{n-1}=S_n-2S_{n-1}>0$
so we have $\dfrac{a_{n+1}}{a_n} >2$.
Next , we will prove M>2 doesn't hold .
for any $n$, let $a_{n+1} = 3 a_n - S_{n-1}$.
so $S_{n+1} =4S_n -4S_{n-1}$
since $S_0=1, S_1=4$,we have
$S_n=2^n+n\cdot 2^{n}=(n+2)\cdot2^{n}$
so $a_n=S_n-S_{n-1}=(n+2)\cdot2^{n-1}$
Now we get
$\mathop {\lim }\limits_{n \to \infty } \frac{{{a_{n + 1}}}}{{{a_n}}} = \mathop {\lim }\limits_{n \to \infty } \frac{{(n + 3) \cdot {2^n}}}{{(n + 2) \cdot {2^{n - 1}}}} = \mathop {\lim }\limits_{n \to \infty } 2 \cdot \frac{{n + 3}}{{n + 2}} = 2$
according to that , $M=2$.