added location add/remove functions.
added start/end index parameters to add/remove_location() interfaces.
do not touch existing sync_status value when adding location.
check location existence when removing a location.
Merge branch 'metalock'