java_library: provide a way to specify non transitive dependencies

Add compile_deps parameter to java_library function to specify the non
transitive dependencies. Because of the way how dependency graph is
implemented the deps parameter must still list all dependencies:

```python
  java_binary(
    name = 'plugin',
    manifest_file = 'resources/MANIFEST.MF',
    deps = ['//:plugin-library'],
  )

  java_library(
    name = 'plugin-library',
    srcs = glob(...),
    deps = ['//lib:plugin-api'],
    compile_deps = ['//lib:plugin-api'],
  )
```

JAR file plugin.jar doesn't include the content of plugin-api.

Test Plan: https://github.com/davido/buck_test

fixes: #63