Added overloading and a few notes on it.
Added an abstract class