Move Actions to Instance level and add additional information needed by UI

Notes:
```
Service (intended start/stop, intended deployment/package info, env, startTime)
 +- Groups (intended scale)
    +- Instance (# = actual scale)

physical machine
 +- VM (Executor - totalCap)
    +- Docker container (Instance - OS/Container version info)
       +- strong-pm     (Instance - curent deployment/package info, pmPort)
         +- runner (Instance - intended started state)
           +- strong-supervisor (Instance - intended-size, applicationName, 
                                 npmLs, agent-version, hasApiKey, [licenses],
                                 startTime, restartCount, {supervisor-stats},
                                 [listeningPorts])
             +- worker (Process - pid, workerId, isTrackingObj, isProfiling, 
                        isSnapshotting, startTime, stopTime, stopReason)

api-server
redis


POST /Instance/1/action <- stop, soft-stop, restart, soft-restart, start, 
                           start-tracking-objects, stop-tracking-objects,
                           start-cpu-profiling, stop-cpu-profiling,
                           heap-snapshot, shutdown
** need to modify supervisor to expose agent state to strong-pm


start => started <- true
  worker 0 <- spawned (observed, might die & restart)
  worker n <- spawned (observed, might die & restart)

stop => started <- false
  worker n <- killed (observed, might not die?)
  worker 0 <- killed (observed, might not die?)
```