Build image on a separeted workspace, lock building image while another process running

This PR is related to the issue #52

NOTE: This PR has to be merged to master, after merging #82 because this feature depends on the feature implemented in #82 . 
Yes,  `GitHandler` calls `init_repo` without `:workspace_dir` option.