A work in progress upload component. More updates to come....