Added enumuation for better error messages
Added some directory support for filesystem