You will need to implement a VSM information retrieval system and an extension of your choice.
The first part requires you to construct an inverted index over your corpus, to provide an efficient
means of looking up documents containing a query term and the TF*IDF for each term, and means
of computing cosine similarity between the query and the documents.