Added constructors and destructor