first edition. a lot of things to do.
add move-disc function
refactor move-disc