just use sync device open to allow major simplification, fixes #2
add constants (fixes #1), update README