big commit - refactored some functions, renamed some files, and implemented POST