added option to allow non self avoiding walk