Add check for when an empty list remains after preprocessing and do not continue for both legacy and modern windows implementations. Fix #71
- Move macOS and Windows implementations to sub packagese to improve organization - Fix #64 in legacy windows implementation by mapping results to standard error codes