Added optional withdraw fees, cleaned up, and bug fixes