Fix a bug resulting in incorrect downloaded bytes and some unfinished changes
Oh, the dreaded .suo
Merge remote-tracking branch 'remotes/hexf/master'