add mutex
suport formatted string, and update Readme