Completed: Test cases, comments, test coverage, bugs fix. 

Signed-off-by: Sanjay Madnani <http://sanjaymadnani.wordpress.com/>