Added another constructor and supporting logic.
Removed unnecessary #includes
Added copyright notice