Fixed the print methods so that they return the object invisibly and accept ... arguments