Several modifications which includes (1) better way to handle Scope enum, (2) organize and clean-up the code, (3) use the portable JSON.Net, and (4) add unit testing project