set-position! takes position map argument