windows port tentative

using cross-platform compatible module "lockfile" instead of ad-hoc
impementation
replace "mv" with "move" shell command when on windows
minor modifications for type consistency, serialization