Initial commit: code, documentaton, readme file