There seems to be a misplaced parenthesis in is_writable_file. The line with ifelse reads:
ifelse(file.exists(x, "unwritable", "nonexistent"))
but should read
ifelse(file.exists(x), "unwritable", "nonexistent")
This makes ifelse throw an error as it doesn't get enough arguments.
Thanks for a great package! /Ralf