anchor.diff:    all/0,
     exist/1,
     create/1,
  -  update/1, update_by_name/1,
  -  delete/1, new/1
  +  update/2, 
  +  update_by_name/1,
  +  delete/1, new/1, 
  +  update_proplist_for_app/2,
  +  build_on_disk_app_name/1
   ]).
   
   % Find the first application named Name
  
positive.code:     true -> ?NOTIFY({app, updated, App});
      false -> ?NOTIFY({app, created, App})
    end,
    db:write(App),
    App;
  create(NewProps) ->
    create(new(NewProps)).
  
negative.code:     App -> {ok, create(App#app{updated_at = date_util:now_to_seconds()})}
    end.
  
  update([], _) -> ok;
  update(App, NewProps) when is_record(App, app) ->
    NewApp = update_proplist_for_app(App, NewProps),
    save(NewApp);
  update(Name, NewProps) ->
    App = find_by_name(Name),
    update(App, NewProps).
  
  delete(App) when is_record(App, app) -> db:delete_object(App);
  delete(Name) ->
  