Added support for 'rebuildAllCourses' event

Previously changing the theme or updating plugins removed the entire
course working folder in order to force a rebuild. Now the code emits a
'rebuildAllCourses' event when the theme changes or the plugins are
updated.  A .rebuild file is written to every course.  When this file
exists on Preview or Publish, the framework is rebuilt.