fixed identation
reordered public functions
major refactoring, adding enums, cleaning up things
now checking maxLengths like in nsyrc
minor formatting
added padding to --data and did some cleaning up