added cache for array uploads in attachments(), added optional path source for input()
added tests for attachments(), nocache(), json()