[google|compute] Added read metadata from file functionality

The patch adds the ability to read metadata from files allowing users to specify startup scripts or arbitrary metadata for instances in separate files.
Ruby does pass error messages for missing files, bad permissions, and when data size limits are exceeded. For data size limits, it says 'Value for field 'resource.metadata.items[5].value' is too large'.