Added Exceptions, and derived file exception, add print directory contents