fix bugs, add handling of Exceptions, add documentation
fix divide by zero in constructors
add documentation
add bonus expt method