Fixed some typos in the code and docs

Closes #381

Signed-off-by: Tomaz Muraus <tomaz@apache.org>
diff --git a/docs/compute/drivers/cloudstack.rst b/docs/compute/drivers/cloudstack.rst
index a9ab631..cff71e2 100644
--- a/docs/compute/drivers/cloudstack.rst
+++ b/docs/compute/drivers/cloudstack.rst
@@ -156,7 +156,7 @@
 Advanced zones in CloudStack provide tenant isolation via VLANs or SDN
 technologies like GRE/STT meshes. In a typical advanced zones, users will
 deploy nodes on a private network and will use NAT to access their nodes.
-Therefore one needs to specifiy the network a node needs to be deployed on,
+Therefore one needs to specify the network a node needs to be deployed on,
 and needs to setup port forwarding or IP forwarding rules.
 
 1. Start an interactive shell on Ikoula public cloud
diff --git a/docs/compute/drivers/outscale_inc.rst b/docs/compute/drivers/outscale_inc.rst
index b765ad2..a6786a2 100644
--- a/docs/compute/drivers/outscale_inc.rst
+++ b/docs/compute/drivers/outscale_inc.rst
@@ -19,7 +19,7 @@
 * (Soon) US East (New Jersey) Region
 * (Soon) Asia (Hong Kong) Region
 
-Outscale INC is an american company: prices are in $.
+Outscale INC is an American company: prices are in $.
 
 API Docs
 --------
diff --git a/docs/compute/drivers/outscale_sas.rst b/docs/compute/drivers/outscale_sas.rst
index 80a1fcd..441febc 100644
--- a/docs/compute/drivers/outscale_sas.rst
+++ b/docs/compute/drivers/outscale_sas.rst
@@ -19,7 +19,7 @@
 * (Soon) US East (New Jersey) Region
 * (Soon) Asia (Hong Kong) Region
 
-Outscale SAS is an european company: prices are in €.
+Outscale SAS is a European company: prices are in €.
 
 API Docs
 --------
diff --git a/docs/compute/drivers/vsphere.rst b/docs/compute/drivers/vsphere.rst
index 56013c8..243b63f 100644
--- a/docs/compute/drivers/vsphere.rst
+++ b/docs/compute/drivers/vsphere.rst
@@ -40,7 +40,7 @@
 Examples
 --------
 
-1. Connect by specfiying a host
+1. Connect by specifying a host
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 .. literalinclude:: /examples/compute/vsphere/connect_host.py
diff --git a/docs/loadbalancer/drivers/elb.rst b/docs/loadbalancer/drivers/elb.rst
index 219454f..26b63f9 100644
--- a/docs/loadbalancer/drivers/elb.rst
+++ b/docs/loadbalancer/drivers/elb.rst
@@ -65,7 +65,7 @@
 
 The first step in accessing ELB is to create a connection to the service.
 
-So, when you instantiate a ELB driver you need to pass the following arguments
+So, when you instantiate an ELB driver you need to pass the following arguments
 to the driver constructor:
 
 * ``key`` - Your AWS API key
@@ -138,7 +138,7 @@
 .. literalinclude:: /examples/loadbalancer/elb/create_lb_policy.py
    :language: python
 
-If you get ``True``, then congratulation you have succesfully created
+If you get ``True``, then congratulation you have successfully created
 the load balancer policy.
 
 Now there are some extension methods to look on
diff --git a/docs/third_party_drivers.rst b/docs/third_party_drivers.rst
index f9191d1..20a41b6 100644
--- a/docs/third_party_drivers.rst
+++ b/docs/third_party_drivers.rst
@@ -1,7 +1,7 @@
 Third Party Drivers
 ===================
 
-Libcloud includes most of the drivers in it's core, but some providers and
+Libcloud includes most of the drivers in its core, but some providers and
 developers for various reasons decide to release their driver as a separate
 PyPi package.
 
diff --git a/libcloud/common/abiquo.py b/libcloud/common/abiquo.py
index 041a9ff..69bf3c7 100644
--- a/libcloud/common/abiquo.py
+++ b/libcloud/common/abiquo.py
@@ -134,7 +134,7 @@
         """
         Determine if the request was successful.
 
-        Any of the 2XX HTTP response codes are accepted as successfull requests
+        Any of the 2XX HTTP response codes are accepted as successful requests
 
         :rtype:  ``bool``
         :return: successful request or not.
diff --git a/libcloud/compute/drivers/cloudstack.py b/libcloud/compute/drivers/cloudstack.py
index 43617bd..d8475df 100644
--- a/libcloud/compute/drivers/cloudstack.py
+++ b/libcloud/compute/drivers/cloudstack.py
@@ -2330,7 +2330,7 @@
 
     def ex_create_network_acllist(self, name, vpc_id, description=None):
         """
-        Create a ACL List for a network within a VPC.
+        Create an ACL List for a network within a VPC.
 
         :param name: Name of the network ACL List
         :type  name: ``string``
@@ -2366,7 +2366,7 @@
                               start_port, end_port, action=None,
                               traffic_type=None):
         """
-        Creates a ACL rule in the given network (the network has to belong to
+        Creates an ACL rule in the given network (the network has to belong to
         VPC)
 
         :param      protocol: the protocol for the ACL rule. Valid values are
@@ -2451,7 +2451,7 @@
 
     def ex_replace_network_acllist(self, acl_id, network_id):
         """
-        Create a ACL List for a network within a VPC.Replaces ACL associated
+        Create an ACL List for a network within a VPC.Replaces ACL associated
         with a Network or private gateway
 
         :param acl_id: the ID of the network ACL
diff --git a/libcloud/compute/drivers/ec2.py b/libcloud/compute/drivers/ec2.py
index 217ed4c..87e6afa 100644
--- a/libcloud/compute/drivers/ec2.py
+++ b/libcloud/compute/drivers/ec2.py
@@ -732,7 +732,7 @@
 
 """
 Sizes must be hardcoded because Outscale doesn't provide an API to fetch them.
-Outscale cloud instances share some names with EC2 but have differents
+Outscale cloud instances share some names with EC2 but have different
 specifications so declare them in another constant.
 """
 OUTSCALE_INSTANCE_TYPES = {
@@ -974,7 +974,7 @@
 
 
 """
-The function manipulating Outscale cloud regions will be overriden because
+The function manipulating Outscale cloud regions will be overridden because
 Outscale instances types are in a separate dict so also declare Outscale cloud
 regions in some other constants.
 """
@@ -2079,7 +2079,7 @@
 
     def get_image(self, image_id):
         """
-        Get an image based on a image_id
+        Get an image based on an image_id
 
         :param image_id: Image identifier
         :type image_id: ``str``
@@ -2595,7 +2595,7 @@
         :type       image_location: ``str``
 
         :param      root_device_name: The device name for the root device
-                                      Required if registering a EBS-backed AMI
+                                      Required if registering an EBS-backed AMI
         :type       root_device_name: ``str``
 
         :param      block_device_mapping: A dictionary of the disk layout
@@ -3652,7 +3652,7 @@
     def ex_attach_network_interface_to_node(self, network_interface,
                                             node, device_index):
         """
-        Attatch a network interface to an instance.
+        Attach a network interface to an instance.
 
         :param      network_interface: EC2NetworkInterface instance
         :type       network_interface: :class:`EC2NetworkInterface`
@@ -3680,7 +3680,7 @@
 
     def ex_detach_network_interface(self, attachment_id, force=False):
         """
-        Detatch a network interface from an instance.
+        Detach a network interface from an instance.
 
         :param      attachment_id: The attachment ID associated with the
                                    interface
@@ -4159,7 +4159,7 @@
 
     def ex_attach_internet_gateway(self, gateway, network):
         """
-        Attach a Internet gateway to a VPC
+        Attach an Internet gateway to a VPC
 
         :param      gateway: The gateway to attach
         :type       gateway: :class:`.VPCInternetGateway`
@@ -4179,7 +4179,7 @@
 
     def ex_detach_internet_gateway(self, gateway, network):
         """
-        Detach a Internet gateway from a VPC
+        Detach an Internet gateway from a VPC
 
         :param      gateway: The gateway to detach
         :type       gateway: :class:`.VPCInternetGateway`
@@ -4200,7 +4200,7 @@
     def ex_list_route_tables(self, route_table_ids=None, filters=None):
         """
         Describes one or more of a VPC's route tables.
-        These are are used to determine where network traffic is directed.
+        These are used to determine where network traffic is directed.
 
         :param      route_table_ids: Return only route tables matching the
                                 provided route table IDs. If not specified,
@@ -4848,7 +4848,7 @@
 
     def _to_interface(self, element, name=None):
         """
-        Parse the XML element and return a EC2NetworkInterface object.
+        Parse the XML element and return an EC2NetworkInterface object.
 
         :param      name: An optional name for the interface. If not provided
                           then either tag with a key "Name" or the interface ID
@@ -5760,7 +5760,7 @@
         :type       architecture: ``str``
 
         :param      root_device_name: The device name for the root device
-                                      Required if registering a EBS-backed AMI
+                                      Required if registering an EBS-backed AMI
         :type       root_device_name: ``str``
 
         :param      block_device_mapping: A dictionary of the disk layout
diff --git a/libcloud/compute/drivers/elasticstack.py b/libcloud/compute/drivers/elasticstack.py
index 739fa8f..18b581b 100644
--- a/libcloud/compute/drivers/elasticstack.py
+++ b/libcloud/compute/drivers/elasticstack.py
@@ -224,7 +224,7 @@
         return nodes
 
     def create_node(self, **kwargs):
-        """Creates a ElasticStack instance
+        """Creates an ElasticStack instance
 
         @inherits: :class:`NodeDriver.create_node`
 
diff --git a/libcloud/compute/drivers/gce.py b/libcloud/compute/drivers/gce.py
index 139ab78..a268ad0 100644
--- a/libcloud/compute/drivers/gce.py
+++ b/libcloud/compute/drivers/gce.py
@@ -1311,7 +1311,7 @@
                                        'default' service account email and a
                                        scope of 'devstorage.read_only'. Also
                                        accepts the aliases defined in
-                                       'gcloud cmopute'.
+                                       'gcloud compute'.
         :type     ex_service_accounts: ``list``
 
         :return:  A Node object for the new node.
@@ -1446,7 +1446,7 @@
                                        'default' service account email and a
                                        scope of 'devstorage.read_only'. Also
                                        accepts the aliases defined in
-                                       'gcloud cmopute'.
+                                       'gcloud compute'.
         :type     ex_service_accounts: ``list``
 
         :keyword  timeout: The number of seconds to wait for all nodes to be
@@ -2026,7 +2026,7 @@
                                        'default' service account email and a
                                        scope of 'devstorage.read_only'. Also
                                        accepts the aliases defined in
-                                       'gcloud cmopute'.
+                                       'gcloud compute'.
         :type     ex_service_accounts: ``list``
 
         :return:  A Node object for the new node.
@@ -2126,7 +2126,7 @@
         :keyword auto_delete: Flag to set for the auto-delete value
         :type    auto_delete: ``bool`` (default True)
 
-        :return:  True if successfull
+        :return:  True if successful
         :rtype:   ``bool``
         """
         request = '/zones/%s/instances/%s/setDiskAutoDelete' % (
@@ -2163,7 +2163,7 @@
         :param  image: Image object to delete
         :type   image: ``str`` or :class:`GCENodeImage`
 
-        :return: True if successfull
+        :return: True if successful
         :rtype:  ``bool``
         """
         if not hasattr(image, 'name'):
@@ -2186,7 +2186,7 @@
         :param  state: State of the image
         :type   state: ``str``
 
-        :return: True if successfull
+        :return: True if successful
         :rtype:  ``bool``
         """
         if not hasattr(image, 'name'):
@@ -2996,7 +2996,7 @@
                                        'default' service account email and a
                                        scope of 'devstorage.read_only'. Also
                                        accepts the aliases defined in
-                                       'gcloud cmopute'.
+                                       'gcloud compute'.
         :type     ex_service_accounts: ``list``
 
         :return:  A tuple containing a request string and a node_data dict.
diff --git a/libcloud/compute/drivers/hpcloud.py b/libcloud/compute/drivers/hpcloud.py
index 3c4360a..5a50d1f 100644
--- a/libcloud/compute/drivers/hpcloud.py
+++ b/libcloud/compute/drivers/hpcloud.py
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 """
-HP Public cloud driver which is esentially just a small wrapper around
+HP Public cloud driver which is essentially just a small wrapper around
 OpenStack driver.
 """
 
diff --git a/libcloud/compute/drivers/kili.py b/libcloud/compute/drivers/kili.py
index f98e131..11c1c7b 100644
--- a/libcloud/compute/drivers/kili.py
+++ b/libcloud/compute/drivers/kili.py
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 """
-HP Public cloud driver which is esentially just a small wrapper around
+HP Public cloud driver which is essentially just a small wrapper around
 OpenStack driver.
 """
 
diff --git a/libcloud/compute/drivers/openstack.py b/libcloud/compute/drivers/openstack.py
index 750891d..056d016 100644
--- a/libcloud/compute/drivers/openstack.py
+++ b/libcloud/compute/drivers/openstack.py
@@ -227,7 +227,7 @@
 
     def get_image(self, image_id):
         """
-        Get an image based on a image_id
+        Get an image based on an image_id
 
         @inherits: :class:`NodeDriver.get_image`
 
diff --git a/libcloud/compute/drivers/profitbricks.py b/libcloud/compute/drivers/profitbricks.py
index 0d4a5ea..7b23cab 100644
--- a/libcloud/compute/drivers/profitbricks.py
+++ b/libcloud/compute/drivers/profitbricks.py
@@ -522,7 +522,7 @@
         :param node: The node you wish to destroy.
         :type volume: :class:`Node`
 
-        :param ex_remove_attached_disks: True to destory all attached volumes.
+        :param ex_remove_attached_disks: True to destroy all attached volumes.
         :type ex_remove_attached_disks: : ``bool``
 
         :rtype:     : ``bool``
diff --git a/libcloud/compute/drivers/vsphere.py b/libcloud/compute/drivers/vsphere.py
index 5a51007..4206d43 100644
--- a/libcloud/compute/drivers/vsphere.py
+++ b/libcloud/compute/drivers/vsphere.py
@@ -62,7 +62,7 @@
     def __init__(self, user_id, key, secure=True,
                  host=None, port=None, url=None, timeout=None):
         if host and url:
-            raise ValueError('host and url arguments are mutally exclusive')
+            raise ValueError('host and url arguments are mutually exclusive')
 
         if host:
             host_or_url = host
diff --git a/libcloud/compute/ssh.py b/libcloud/compute/ssh.py
index 1a88e9f..7f4719c 100644
--- a/libcloud/compute/ssh.py
+++ b/libcloud/compute/ssh.py
@@ -119,8 +119,8 @@
         """
         Connect to the remote node over SSH.
 
-        :return: True if the connection has been successfuly established, False
-                 otherwise.
+        :return: True if the connection has been successfully established,
+                 False otherwise.
         :rtype: ``bool``
         """
         raise NotImplementedError(
@@ -155,7 +155,7 @@
         :type path: ``str``
         :keyword path: File path on the remote node.
 
-        :return: True if the file has been successfuly deleted, False
+        :return: True if the file has been successfully deleted, False
                  otherwise.
         :rtype: ``bool``
         """
@@ -178,7 +178,7 @@
         """
         Shutdown connection to the remote node.
 
-        :return: True if the connection has been successfuly closed, False
+        :return: True if the connection has been successfully closed, False
                  otherwise.
         :rtype: ``bool``
         """
diff --git a/libcloud/dns/drivers/gandi.py b/libcloud/dns/drivers/gandi.py
index 48a6ed5..792110d 100644
--- a/libcloud/dns/drivers/gandi.py
+++ b/libcloud/dns/drivers/gandi.py
@@ -40,7 +40,7 @@
     In effect, this is a transaction.
 
     Any calls made inside this context manager will be applied to a new version
-    id. If your changes are succesful (and only if they are successful) they
+    id. If your changes are successful (and only if they are successful) they
     are activated.
     """
 
diff --git a/libcloud/loadbalancer/drivers/gce.py b/libcloud/loadbalancer/drivers/gce.py
index e1fa299..c754221 100644
--- a/libcloud/loadbalancer/drivers/gce.py
+++ b/libcloud/loadbalancer/drivers/gce.py
@@ -21,7 +21,7 @@
 from libcloud.loadbalancer.base import LoadBalancer, Member, Driver, Algorithm
 from libcloud.compute.drivers.gce import GCEConnection, GCENodeDriver
 
-# GCE doesn't actually give you a algorithm choice, but this is here simply as
+# GCE doesn't actually give you an algorithm choice, but this is here simply as
 # the closest match.  The actual algorithm is described here:
 # https://developers.google.com/compute/docs/load-balancing/#overview
 DEFAULT_ALGORITHM = Algorithm.RANDOM
diff --git a/libcloud/storage/base.py b/libcloud/storage/base.py
index f12b906..5e4f09a 100644
--- a/libcloud/storage/base.py
+++ b/libcloud/storage/base.py
@@ -284,7 +284,7 @@
 
     def get_object_cdn_url(self, obj):
         """
-        Return a object CDN URL.
+        Return an object CDN URL.
 
         :param obj: Object instance
         :type  obj: :class:`Object`
diff --git a/libcloud/storage/drivers/atmos.py b/libcloud/storage/drivers/atmos.py
index a1e12cc..c52be03 100644
--- a/libcloud/storage/drivers/atmos.py
+++ b/libcloud/storage/drivers/atmos.py
@@ -387,7 +387,7 @@
 
     def get_object_cdn_url(self, obj, expiry=None, use_object=False):
         """
-        Return a object CDN URL.
+        Return an object CDN URL.
 
         :param obj: Object instance
         :type  obj: :class:`Object`
diff --git a/libcloud/storage/drivers/local.py b/libcloud/storage/drivers/local.py
index 985243d..60de8ce 100644
--- a/libcloud/storage/drivers/local.py
+++ b/libcloud/storage/drivers/local.py
@@ -285,7 +285,7 @@
 
     def get_object_cdn_url(self, obj):
         """
-        Return a object CDN URL.
+        Return an object CDN URL.
 
         :param obj: Object instance
         :type  obj: :class:`Object`