Do not pass redundant argument to superclass init.
Make abstract methods raise NotImplementedError.
Rudimentary unit tests for DataStore.
Merge pull request #792 from Renelvon/fix_bad_arg

Fix node not starting.
Abstract the Elliptic Curve used; setup initial testsuite.

* Introduce crypto_util.BTC_CURVE as the curve's name. Replace any
  magic strings in the codebase with crypto_util.BTC_CURVE.
* Invoke pyelliptic.OpenSSL to get curve ID
* Abstract the key length.
Abstract and test public and private key processing.

* pubkey_to_pyelliptic now returns key in bin format.
* Replace hexToPubkey with pubkey_to_pyelliptic.
Create and test a Cryptor class to abstract pyelliptic.

* Replace makePubCryptor, makePrivCryptor and ec.ECC with Cryptor.
* Provide the ECC key getters; do not keep the keys in Cryptor class.
* Purge pyelliptic imports outside crypto_util.
* Purge most references to _myself; replace the rest with cryptor.