Refactor and add tests for plugins.py

Improvement to the tests currently being run on ``plugins.py``

related #644 
Oh perfect. I have added os.path.splitext