Notifications, tree class, YAML framework edits and function status

 - Notifications framework
 - Base tree class
 - Added directory creation
 - Migrated `Settings.java` to use the YAML framework
 - Reset a player's function status to `FunctionStatus.IDLE` when doing `/sort` again as to prevent double sorts with chest classes
 - Changed `Messages.ReportError` to "Exception" because semantics