Added some logging support and extension checks
Started a migration over to the logging api from standard system.out calls
Hopefully, this will also make it easier to provide the user with information
from logs elsewhere in the program.
MetadataParser now checks each file extension against a list of supported ones
before trying to parse out metadata