Bug 820: Escape SPACE in filenames for URI ctor, use decoded URI components when compiling new URI.

Add IOUtil:
  - String encodeToURI(String)
  - String decodeFromURI(String)

Both only handle escaping of SPACE only. Determine whether other chars need to be treated.