Articulating Transaction types functionalit y including the enhancements for transfer of amount between accounts

1. Transaction Class became abstract class to disable the possiblity of
null transactions as a result of code smells
2. Created Withdraw, Deposit, TransferInto and TransferFrom classes as a
part of code refactoring.
TransferInto/From are a part for coding enhancements. All of these
classes
3. Changed Account Class to reference withdraw, deposit, TransferFrom
and TransferInto classes.
4. Added functionality to Account class for transferring amounts between
accounts using Transactions Class.
Hence, functions spit out Transactions as a one single logical entity.
Did this a part of refactoring