Simplistic answer for Question 3: Import CSV data into data warehouse.
Import the CSV file into a staging table.
For each dimension:
Find all new dimension values in the staging table, insert them into the related dimension table.
Import the staging table into the fact table once all dimension values are defined.