adding cylinder implementation
adding cylinder implementation and test