I have updated the original thread with some basic mechanics.