Object calisthenics and using exceptions instead of JError