diff --git a/pom.xml b/pom.xml
index 880badf..a9a4243 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
de.rwu
easydrop
jar
- 0.1-SNAPSHOT
+ 0.1.0-SNAPSHOT
EasyDrop
http://maven.apache.org
diff --git a/src/main/java/de/rwu/easydrop/Main.java b/src/main/java/de/rwu/easydrop/Main.java
new file mode 100644
index 0000000..608bcd0
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/Main.java
@@ -0,0 +1,24 @@
+package de.rwu.easydrop;
+
+/**
+ * Kickoff point for the service.
+ *
+ * @since 0.1.0
+ */
+public final class Main {
+ /**
+ * Prevents unwanted instantiation.
+ */
+ private Main() {
+ throw new UnsupportedOperationException("Don't instantiate me! >:(");
+ }
+
+ /**
+ * Application entrypoint.
+ *
+ * @param args
+ */
+ public static void main(final String[] args) {
+ System.out.println("I'm alive!");
+ }
+}
diff --git a/src/main/java/de/rwu/easydrop/api/client/DataSource.java b/src/main/java/de/rwu/easydrop/api/client/DataSource.java
new file mode 100644
index 0000000..740c173
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/api/client/DataSource.java
@@ -0,0 +1,23 @@
+package de.rwu.easydrop.api.client;
+
+import de.rwu.easydrop.api.dto.ProductDTO;
+
+/**
+ * Universal interface to implement concrete APIs on.
+ */
+public interface DataSource {
+ /**
+ * Retrieves product info from the data source.
+ *
+ * @param productId Identifier
+ * @return ProductDTO
+ */
+ ProductDTO getProductById(String productId);
+
+ /**
+ * Breaks the connection after specified time.
+ *
+ * @param timeoutSeconds Seconds to time out after
+ */
+ void setConnectionTimeout(int timeoutSeconds);
+}
diff --git a/src/main/java/de/rwu/easydrop/api/client/package-info.java b/src/main/java/de/rwu/easydrop/api/client/package-info.java
new file mode 100644
index 0000000..b4040d6
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/api/client/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * API client connectors for interaction with external data sources.
+ *
+ * @since 0.1.0
+ */
+package de.rwu.easydrop.api.client;
diff --git a/src/main/java/de/rwu/easydrop/api/dto/ProductDTO.java b/src/main/java/de/rwu/easydrop/api/dto/ProductDTO.java
new file mode 100644
index 0000000..a8d8dfc
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/api/dto/ProductDTO.java
@@ -0,0 +1,8 @@
+package de.rwu.easydrop.api.dto;
+
+/**
+ * Product data transfer object.
+ */
+public class ProductDTO {
+
+}
diff --git a/src/main/java/de/rwu/easydrop/api/dto/package-info.java b/src/main/java/de/rwu/easydrop/api/dto/package-info.java
new file mode 100644
index 0000000..7d4f621
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/api/dto/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Data transfer objects for data derived from external sources.
+ *
+ * @since 0.1.0
+ */
+package de.rwu.easydrop.api.dto;
diff --git a/src/main/java/de/rwu/easydrop/api/package-info.java b/src/main/java/de/rwu/easydrop/api/package-info.java
new file mode 100644
index 0000000..5c0f1cf
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/api/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Interaction with external APIs.
+ *
+ * @since 0.1.0
+ */
+package de.rwu.easydrop.api;
diff --git a/src/main/java/de/rwu/easydrop/data/connector/DatabaseConnector.java b/src/main/java/de/rwu/easydrop/data/connector/DatabaseConnector.java
new file mode 100644
index 0000000..cd933d8
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/data/connector/DatabaseConnector.java
@@ -0,0 +1,5 @@
+package de.rwu.easydrop.data.connector;
+
+public class DatabaseConnector {
+
+}
diff --git a/src/main/java/de/rwu/easydrop/data/connector/package-info.java b/src/main/java/de/rwu/easydrop/data/connector/package-info.java
new file mode 100644
index 0000000..fe11513
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/data/connector/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Connectors for databases.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.data.connector;
diff --git a/src/main/java/de/rwu/easydrop/data/dao/ProductDAO.java b/src/main/java/de/rwu/easydrop/data/dao/ProductDAO.java
new file mode 100644
index 0000000..e981caa
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/data/dao/ProductDAO.java
@@ -0,0 +1,5 @@
+package de.rwu.easydrop.data.dao;
+
+public class ProductDAO {
+
+}
diff --git a/src/main/java/de/rwu/easydrop/data/dao/package-info.java b/src/main/java/de/rwu/easydrop/data/dao/package-info.java
new file mode 100644
index 0000000..8ca4719
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/data/dao/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Data access objects for business objects created from persistence.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.data.dao;
diff --git a/src/main/java/de/rwu/easydrop/data/model/Product.java b/src/main/java/de/rwu/easydrop/data/model/Product.java
new file mode 100644
index 0000000..e637c33
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/data/model/Product.java
@@ -0,0 +1,5 @@
+package de.rwu.easydrop.data.model;
+
+public class Product {
+
+}
diff --git a/src/main/java/de/rwu/easydrop/data/model/package-info.java b/src/main/java/de/rwu/easydrop/data/model/package-info.java
new file mode 100644
index 0000000..ed9879b
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/data/model/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Business objects.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.data.model;
diff --git a/src/main/java/de/rwu/easydrop/data/package-info.java b/src/main/java/de/rwu/easydrop/data/package-info.java
new file mode 100644
index 0000000..8d4e6b7
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/data/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Structure for business objects and persisting their info.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.data;
diff --git a/src/main/java/de/rwu/easydrop/demo/package-info.java b/src/main/java/de/rwu/easydrop/demo/package-info.java
index 01c1a1b..d4537c6 100644
--- a/src/main/java/de/rwu/easydrop/demo/package-info.java
+++ b/src/main/java/de/rwu/easydrop/demo/package-info.java
@@ -1,6 +1,6 @@
/**
- * Dieses Paket beinhaltet ist zu Demo-Zwecken.
+ * Package for demo purposes.
*
- * @since 0.1-SNAPSHOT
+ * @todo implement
*/
package de.rwu.easydrop.demo;
diff --git a/src/main/java/de/rwu/easydrop/package-info.java b/src/main/java/de/rwu/easydrop/package-info.java
new file mode 100644
index 0000000..9d9a0d1
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * One of the Top 2 dropshipping platforms around.
+ *
+ * @since 0.1.0
+ */
+package de.rwu.easydrop;
diff --git a/src/main/java/de/rwu/easydrop/service/mapping/ProductMapper.java b/src/main/java/de/rwu/easydrop/service/mapping/ProductMapper.java
new file mode 100644
index 0000000..7f006d8
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/service/mapping/ProductMapper.java
@@ -0,0 +1,5 @@
+package de.rwu.easydrop.service.mapping;
+
+public class ProductMapper {
+
+}
diff --git a/src/main/java/de/rwu/easydrop/service/mapping/package-info.java b/src/main/java/de/rwu/easydrop/service/mapping/package-info.java
new file mode 100644
index 0000000..c7ef687
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/service/mapping/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Maps different formats of corresponding objects.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.service.mapping;
diff --git a/src/main/java/de/rwu/easydrop/service/package-info.java b/src/main/java/de/rwu/easydrop/service/package-info.java
new file mode 100644
index 0000000..5c1e2fc
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/service/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Packages for supporting business logic.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.service;
diff --git a/src/main/java/de/rwu/easydrop/service/processing/OrderManager.java b/src/main/java/de/rwu/easydrop/service/processing/OrderManager.java
new file mode 100644
index 0000000..36d391f
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/service/processing/OrderManager.java
@@ -0,0 +1,5 @@
+package de.rwu.easydrop.service.processing;
+
+public class OrderManager {
+
+}
diff --git a/src/main/java/de/rwu/easydrop/service/processing/package-info.java b/src/main/java/de/rwu/easydrop/service/processing/package-info.java
new file mode 100644
index 0000000..1348cce
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/service/processing/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Supports diverse business processes and enforces business rules.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.service.processing;
diff --git a/src/main/java/de/rwu/easydrop/service/validation/ProductValidator.java b/src/main/java/de/rwu/easydrop/service/validation/ProductValidator.java
new file mode 100644
index 0000000..292aeda
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/service/validation/ProductValidator.java
@@ -0,0 +1,5 @@
+package de.rwu.easydrop.service.validation;
+
+public class ProductValidator {
+
+}
diff --git a/src/main/java/de/rwu/easydrop/service/validation/package-info.java b/src/main/java/de/rwu/easydrop/service/validation/package-info.java
new file mode 100644
index 0000000..7333014
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/service/validation/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Supports validation processes.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.service.validation;
diff --git a/src/main/java/de/rwu/easydrop/util/FormattingUtil.java b/src/main/java/de/rwu/easydrop/util/FormattingUtil.java
new file mode 100644
index 0000000..abf0551
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/util/FormattingUtil.java
@@ -0,0 +1,5 @@
+package de.rwu.easydrop.util;
+
+public class FormattingUtil {
+
+}
diff --git a/src/main/java/de/rwu/easydrop/util/package-info.java b/src/main/java/de/rwu/easydrop/util/package-info.java
new file mode 100644
index 0000000..c5417ed
--- /dev/null
+++ b/src/main/java/de/rwu/easydrop/util/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * General utility such as formatting helpers.
+ *
+ * @todo implement
+ */
+package de.rwu.easydrop.util;