Implement some cool ways, new methods and exceptions. add a qualified readme