[NEW] `decorator` module: Contains decorators
- `combine_single_items`: To combine item of sublists (which contain only one item) in a single sublist.
- `conditional`: To run the decorated function and return it's value, only when condition=True
- `run_threaded`: To run the decorated function in a new thread
[NEW] `files` module: Contains methods to work with files
- `delete_files_by_prefix_suffix`: Deletes all files in directory and its subdirectories which have `prefix` as prefix or `suffix` as suffix in their name.
- `get_new_path`: Returns new filePath for files, which do not exist by appending (1/2/3/..).
- `get_random_file_path`: Returns a random path of a file which is not present, in parentDirectory
- `read_file_chunks`: Read file and returns possible data of chunkSize
`Settings` class
- Added `__str__` method
`CustomLogging` class
- Better formatting for log statements
- Logs for `logging.WARNING` will have `[!]` as prefix
Other changes
- Minor docstring improvements
- Added `test.py` file for internal testing _(not for package)_