appears to work correctly but there is an issue with contention over tag entries, also still needs some cleaning up