CDAP-534 Support Metrics querying by runId

We use the runId of the program for storing metrics along with context and metric name and use runId for querying them as well. We support runId for user metrics and we will make change to support runId with system metrics after the associated UI change.

https://issues.cask.co/browse/CDAP-534
No, runId does not encapsulate those, the other constructor was not used anywhere - so i removed it , as the metricsContext (appId.s.serviceId.runnableId.instanceId) is built and passed by the ServiceContext  . I just added runId to this constructor.