RingBuilder.add_dev returns device id

When added a new devices into builder the add_dev function returns it
unique id.

blueprint argparse-in-swift-ring-builder

Change-Id: I57080bb625e812f6cea71199df907a44b332b552
Made tests use a JSON parser in liue of eval.

The results that are being parsed are really JSON, so using a JSON parser is
more semantically correct; in addition using eval anywhere can set a bad
example.

Change-Id: Idcd55400b2571aba0f2f377cf66a3cbf4d3af960
Merge "RingBuilder.add_dev returns device id"