Added tick() method plus some documentation
Added TypeEnum