removed obj oriented code from master and put in separate branch