Added Settings object to facilitate reading/writing settings, and implemented persistent search history for SearchEngine