adding the HalfAdder
adding the FullAdder implementation