You can write your own Scheduler and Node Daemon modules to run alongside or in place of the default ones. For either type of module, you need to implement the SchedListener interface. Add your code to the maui.class.path property and add your properties to the maui.properties file (you need at least one property: <yourmod>.class - the Java class name of your module). Then link in <yourmod> into the maui.modules property.
Example modules are supplied in the RPMs and the tarball downloads. In addition you may need to flush the scheduler and restart before it will pick up your changes if you've added a new Scheduler module to the maui.modules line. (Otherwise it will use the data in stored in the checkpoint table of the database).