Refactor Config labels, fix #286

1.    Fix #286: Fix Config with nil Labels
    
    - Fix nil Label case
    - Remove mergemap.MergeMap() dst auto allocation
    - Improve mergemap tests and its readability
    - Re-enable AddConfigLabels test for Unknown Generic Object having Labels field

1.    Refactor Config obj.Labels to use meta.Accessor

1.    Move mergeMaps() into its own pkg as `pkg/util/mergemap`.MergeInto()

1.    Add Labels and Annotations to MetadataAccessor
    
    cherry-pick(github.com/GoogleCloudPlatform/kubernetes): 28f5d51a5f6975a575d0cd5157c114878deba2ed

1.    meta_test should not depend on runtime.TypeMeta
    
    cherry-pick(github.com/GoogleCloudPlatform/kubernetes): 508724b1f8431b860f3c35607127a41e70f2f0ed
`bump()` style commit for cherry-picks?

Currently, those commits are:
```
Add Labels and Annotations to MetadataAccessor
cherry-pick(github.com/GoogleCloudPlatform/kubernetes): 28f5d51a5f6975a575d0cd5157c114878deba2ed

meta_test should not depend on runtime.TypeMeta
cherry-pick(github.com/GoogleCloudPlatform/kubernetes): 508724b1f8431b860f3c35607127a41e70f2f0ed
```

I thought `bump()` was reserved for complete rebases using Godeps, not for single cherry-picks.