Refactoring of core methods and lowering of exception throwing.