Re-factoring from exceptions to true/false
Working version. Need to add an exception for archiving.
Alpha 2