moved allocator to seperate file

Merge with 22fb97e9f58a0a8b18db7f81b7392dae0cd64571

(0) -30 -10 -2 +2 +10 +30 +100 +300 +1000 tip

mercurial