Constructors implemented, still need lots of refactoring!!!!