Implemented generics
Revert "Implemented generics"

This reverts commit 6703a06adc00dd44a7bc631723c7f1d7cb5c5a06.
Revert "Revert "Implemented generics""

This reverts commit 255926e052bab699f2b8ad6120efa0ab5eed91e6.
Merge branch 'master' of https://github.com/CEFinkelstein/CS2102-D14.git