IgniteClient interface currently doesn't override close() from AutoClosable. Because of that, it inherits `close() throws Exception` forcing all users to catch Exception when using IgniteClient.
In fact, this shouldn't be required. `TcpIgniteClient implements IgniteClient` currently throws Exception but it doesn't need to - its code doesn't throw any checked exceptions.
- Add `@Overrides public void close()` with no `throws` to IgniteClient.
- Remove `throws Exception` from `TcpIgniteClient::close`
Note: this change is fully backwards-compatible. It is legal to narrow the scope of `throws` in a new version of a method.