anchor.diff:  %%%% Helper methods
   %%%%%%%%%%%%%%%%%%%
   
  --spec killall_vms() -> ok.
  +-spec killall_vms() -> fail | ok.
   killall_vms() ->
   	case get_hosts() of
   		{_, Hosts} ->
  -    		lists:foreach(fun({Hostname, _}) ->
  -                          Cmd = lists:flatten(io_lib:format("ssh ~s ~s killall -9 beam.smp",
  -                                                            [get_ssh_args(), Hostname])),
  -                          exec(Cmd)
  -            end, Hosts);
  +    		lists:foreach(fun({Hostname, Status}) ->
  +                                  case Status of
  +                                      active ->
  +                                          scalaris_vm(stop, Hostname);
  +                                      inactive ->
  +                                          ok
  +                                  end
  +                          end, Hosts),
  +            ok;
   		fail -> fail
       end.
   
  -start_scalaris_vm(Hostname) ->
  +-spec scalaris_vm(start | stop, string()) -> ok.
  +scalaris_vm(Action, Hostname) ->
       Scalaris = get_scalaris_service(),
       Services = [Scalaris | get_additional_services()],
       lists:foreach(fun (Service) ->
  -                          {StartCmd, _} = Service,
  -                          Cmd = format("ssh ~s ~s \"~s\"", [get_ssh_args(), Hostname, StartCmd]),
  -                          io:format("Executing: ~p~n", [Cmd]),
  -                          _ = exec(Cmd)
  -                  end, Services),
  -    ok.
  -
  -stop_scalaris_vm(Hostname) ->
  -    Scalaris = get_scalaris_service(),
  -    Services = [Scalaris | get_additional_services()],
  -    lists:foreach(fun (Service) ->
  -                          {_, StopCmd} = Service,
  -                          Cmd = format("ssh ~s ~s \"~s\"", [get_ssh_args(), Hostname, StopCmd]),
  +				{StartCmd, StopCmd} = Service,
  +				ServiceCmd =
  +				case Action of
  +								  start -> StartCmd;
  +								  stop  -> StopCmd
  +							  end,
  +                          Cmd = format("ssh -n -f ~s \"(~s)\"", [Hostname, ServiceCmd]),
                             io:format("Executing: ~p~n", [Cmd]),
                             _ = exec(Cmd)
                     end, Services),
  
positive.code:         {_, active} ->
              add_or_remove_vms(add, Pending, RemainingHosts, UpdatedHosts ++ [Host]);
          {Hostname, _} ->
              start_scalaris_vm(Hostname),
              add_or_remove_vms(add, Pending - 1, RemainingHosts, UpdatedHosts ++ [{Hostname, active}])
      end;
  add_or_remove_vms(remove, Pending, Hosts, UpdatedHosts) ->
      [Host | RemainingHosts] = Hosts,
      case Host of
          {Hostname, active} ->
              stop_scalaris_vm(Hostname),
              add_or_remove_vms(remove, Pending - 1, RemainingHosts, UpdatedHosts ++ [{Hostname, inactive}]);
          {_, _} ->
              add_or_remove_vms(remove, Pending, RemainingHosts, UpdatedHosts ++ [Host])
  
negative.code: 		_ -> fail
  	end.
  
  -spec get_scalaris_service() ->  tuple(string(), string()).
  get_scalaris_service() ->
      Path =
  