Cleaned up Ui API

Bundle all the download details into a single record.
Migrated main solver dialog to OCaml