work on file transfers and use more efficient data structures
fixing registration, WIP