Refactored main method, improved abstract, intro, subject search and
main part