diff --git a/.gitignore b/.gitignore
index 29b16e3275bd2fe6fe37a7d3d7f7664eb00ed9f2..ac2ffeb69b84c916c0433ab432c017235cfd0ad8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,10 +1,15 @@
+!.gitignore
+.directory
+*~
+*.log
+
 # Compiled python modules.
 *.pyc
 
-# Setuptools distribution folder.
-/dist/
-/build/
-
 # Python egg metadata, regenerated from source files by setuptools.
 /*.egg-info
 
+# Package building related folders.
+/archive/pydgets*
+/build/
+/dist/pydgets*
diff --git a/LICENSE.txt b/LICENSE.txt
index 9f9d108cf0da45069c4e6ba56b600255598b6cf1..224316ffe29b1313a73b1f8676df6a3104b5395a 100644
--- a/LICENSE.txt
+++ b/LICENSE.txt
@@ -1,6 +1,6 @@
 The MIT License (MIT)
 
-Copyright (c) 2016 Honza Mach
+Copyright (C) since 2016 Jan Mach <honza.mach.ml@gmail.com>
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
diff --git a/Makefile-dep b/Makefile-dep
new file mode 100644
index 0000000000000000000000000000000000000000..d89cc32c673d94b8da78fb7683966b79d4b2a71d
--- /dev/null
+++ b/Makefile-dep
@@ -0,0 +1,44 @@
+#-------------------------------------------------------------------------------
+# Copyright (C) since 2016 Jan Mach <honza.mach.ml@gmail.com>
+# Use of this source is governed by the MIT license, see LICENSE file.
+#-------------------------------------------------------------------------------
+
+DOCDIR = doc
+DIST_SIZE:=$(shell ls dist | wc -l)
+
+all: archive bdist deploy
+
+# Perform unit tests
+test:
+	$(info Testing source code)
+	nosetests
+
+# Move old distribution files to archive directory
+archive:
+	$(info Checking if dist archivation is needed)
+	@if ! [ `ls dist | wc -l` = "0" ]; then\
+		echo "Moving old distribution files to archive";\
+		mv -f dist/* archive;\
+	fi
+
+# Build various Python package distributions
+bdist:
+	$(info Building distributions)
+
+	# Build and upload (insecure)
+	#python3 setup.py sdist bdist_wheel upload
+
+	# Build only
+	python3 setup.py sdist bdist_wheel
+
+# Perform installation from local files for both Python v2 and v3
+install:
+	$(info Local installation)
+	sudo pip3 install dist/idea*.whl
+
+# Deploy latest packages to PyPI
+deploy:
+	$(info PyPI deployment)
+
+	# Secure upload with Twine
+	twine upload dist/*
diff --git a/README.rst b/README.rst
index 920094a9a0ef503f39fda516f9c61437e7493a02..6b4675cf8aa56399f889bb595b9f27597394dce2 100644
--- a/README.rst
+++ b/README.rst
@@ -1,4 +1,19 @@
 Pydgets
-=======================
+================================================================================
 
 Python3 command line widget library.
+
+.. warning::
+
+    This library is still work in progress.
+
+.. note::
+
+    For usage and examples please see the source code, for demonstration execute
+    the appropriate module with Python3 interpreter.
+
+Copyright
+--------------------------------------------------------------------------------
+
+Copyright (C) since 2016 Jan Mach <honza.mach.ml@gmail.com>
+Use of this package is governed by the MIT license, see LICENSE file.
diff --git a/archive/.git.placeholder b/archive/.git.placeholder
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/dist/.git.placeholder b/dist/.git.placeholder
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/setup.py b/setup.py
index b7f94399edc1c0027f52226f751b8090947bd2d6..d368ac58a1e062e82844344cf740e3cf05b7dc6d 100644
--- a/setup.py
+++ b/setup.py
@@ -1,10 +1,14 @@
 #!/usr/bin/python3
 # -*- coding: utf-8 -*-
 #-------------------------------------------------------------------------------
-# Copyright (C) 2015-2016 Jan Mach <honza.mach.ml@gmail.com>
+# Copyright (C) 2015-2016 Jan Mach <email@jan-mach.cz>
 # Use of this source is governed by the MIT license, see LICENSE file.
 #-------------------------------------------------------------------------------
 
+# Resources:
+#   https://packaging.python.org/en/latest/
+#   https://python-packaging.readthedocs.io/en/latest/index.html
+
 # Always prefer setuptools over distutils
 from setuptools import setup, find_packages
 # To use a consistent encoding
@@ -16,10 +20,10 @@ here = path.abspath(path.dirname(__file__))
 # Get the long description from the README file
 with open(path.join(here, 'README.rst'), encoding='utf-8') as f:
     long_description = f.read()
-    
+
 setup(
     name = 'pydgets',
-    version = '0.3',
+    version = '0.6',
     description = 'Console widget library for Python 3',
     long_description = long_description,
     classifiers = [
@@ -34,6 +38,8 @@ setup(
     author_email = 'email@jan-mach.cz',
     license = 'MIT',
     packages = ['pydgets'],
+    test_suite = 'nose.collector',
+    tests_require = ['nose'],
     include_package_data = True,
     zip_safe = False
 )