some functionality and lots of bugs
corrections
added main features
added input and output args