Propagating through new constructors, removing deprecated old versions.
Adding consistent handling.