add cli using typer, its option --input-dir, --input-files and --output-dir, add related tests, add logging, add and update of the package version in `logwatcher/__init__.py`, correct templates in `reporter.py`
add tests, reformat code, add an output variable in writing function. All reading and writing functions must read in windows-1252 encoding because original logs are windows-1252 encoded
we can now generate reports based on log files. Three reports are processed: n2 report, other report and general report combining the two previous reports. All reports would be available in the output directory.
`parse_log_file()` use `parse_log_line()` to transform a log file into a list of LogEntry. Log patterns are no use for LogEntry model since the only use of LogEntry is in other modules. Thus, log patterns are now in `parser.py`. Logs are now separated based on test use cases.