add exceptions to fraction constructor