Minor cleanup

I removed most of the logs and returned errors instead of just logging them and continuing.  

I also used path.Join so that we can ensure the keys are properly joined with `/`s.