added threading support with extensive README documentation