cleaned up apis and implemented consistent update concept