Restructured into plugin format, added progress bars