minor updates to health monitor (#140)

diff --git a/provider/lib/utils.js b/provider/lib/utils.js
index a4d5072..3714b73 100644
--- a/provider/lib/utils.js
+++ b/provider/lib/utils.js
@@ -71,7 +71,7 @@
         utils.postTrigger(dataTrigger, auth, 0)
         .then(triggerId => {
             logger.info(method, 'Trigger', triggerId, 'was successfully fired');
-            utils.handleFiredTrigger(dataTrigger, dataTrigger.monitor !== undefined);
+            utils.handleFiredTrigger(dataTrigger);
         })
         .catch(err => {
             logger.error(method, err);
@@ -159,23 +159,21 @@
     };
 
     this.shouldFireTrigger = function(trigger) {
-        if (!trigger.monitor && utils.activeHost === utils.host) {
-           return true;
-        }
-        else if (trigger.monitor === utils.host) {
-            return true;
-        }
-        return false;
+        return trigger.monitor || utils.activeHost === utils.host;
     };
 
     this.hasTriggersRemaining = function(trigger) {
         return !trigger.maxTriggers || trigger.maxTriggers === -1 || trigger.triggersLeft > 0;
     };
 
-    this.handleFiredTrigger = function(dataTrigger, isMonitorTrigger) {
+    this.isMonitoringTrigger = function(monitor, triggerName) {
+        return monitor && utils.monitorStatus.triggerName === triggerName;
+    };
+
+    this.handleFiredTrigger = function(dataTrigger) {
         var method = 'handleFiredTrigger';
 
-        if (isMonitorTrigger && utils.monitorStatus.triggerName === dataTrigger.name) {
+        if (utils.isMonitoringTrigger(dataTrigger.monitor, dataTrigger.name)) {
             utils.monitorStatus.triggerFired = "success";
         }
 
@@ -283,7 +281,7 @@
                     var triggerIdentifier = trigger.id;
                     var doc = trigger.doc;
 
-                    if (!(triggerIdentifier in utils.triggers)) {
+                    if (!(triggerIdentifier in utils.triggers) && !doc.monitor) {
                         //check if trigger still exists in whisk db
                         var namespace = doc.namespace;
                         var name = doc.name;
@@ -354,20 +352,20 @@
                 if (utils.triggers[triggerIdentifier]) {
                     if (doc.status && doc.status.active === false) {
                         utils.stopTrigger(triggerIdentifier);
-                        if (doc.monitor && doc.monitor === utils.host && utils.monitorStatus.triggerName === doc.name) {
+                        if (utils.isMonitoringTrigger(doc.monitor, doc.name)) {
                             utils.monitorStatus.triggerStopped = "success";
                         }
                     }
                 }
                 else {
                     //ignore changes to disabled triggers
-                    if (!doc.status || doc.status.active === true) {
+                    if ((!doc.status || doc.status.active === true) && (!doc.monitor || doc.monitor === utils.host)) {
                         utils.createTrigger(triggerIdentifier, doc)
                         .then(cachedTrigger => {
                             utils.triggers[triggerIdentifier] = cachedTrigger;
                             logger.info(method, triggerIdentifier, 'created successfully');
 
-                            if (doc.monitor && doc.monitor === utils.host && utils.monitorStatus.triggerName === cachedTrigger.name) {
+                            if (utils.isMonitoringTrigger(cachedTrigger.monitor, cachedTrigger.name)) {
                                 utils.monitorStatus.triggerStarted = "success";
                             }