Adding optional ssl param in API

By default http is used for api, but you can pass a param to use ssl.

This is the same behaviour that we have currently in robot.
Renaming https to generic node
Changing how ssl is configured

Expected configuration:

{
  ssl: {
    key: "/path/to/key",
    cert: "/path/to/cert"
  }
}

If ssl is false, use plain HTTP. If it's an empty object (the default)
use our self-signed certs. If it's set up like above, use the provided
certs.
Making tests green
Updating ssl configuration keys and tests
Adding test for ssl disabled
Refactoring api optional ssl logic
Removing wrong conditional in api
Removing unused requires
Merge pull request #173 from hybridgroup/295-optional-ssl

Adding optional ssl param in API