implemented more overloading (comparison, class wrappers)