Has new functionality, some error handling, untested, needs more features[B