Check local variables set with var === undefined.

Local variables always exist, so value check is
enough. This makes it easier to read code for me.
Don't use typeof for Node and Edge 'data' field.

`data` field is always set for Node and Edge objects,
no need to check for existence - value check is enough
for `data` fields.
Use `in` operator to check for index existance.

The check (key in obj) is more readable than
(typeof key[obj] !== 'undefined').
Add helper method .addNodes() that accepts list of strings.
Simplify addNodes() even more by using variable number of arguments.
Simplified API for adding edges.
Merge pull request #28 from techtonik/master

Simplified API for adding nodes and edges.