diff --git a/core/pom.xml b/core/pom.xml
new file mode 100644
index 00000000..0495aa94
--- /dev/null
+++ b/core/pom.xml
@@ -0,0 +1,174 @@
+
+ 4.0.0
+ org.sql2o
+ sql2o
+ jar
+ 1.4.1-SNAPSHOT
+ sql2o
+ Easy database query library
+ http://www.sql2o.org
+
+
+ MIT
+ http://www.opensource.org/licenses/MIT
+ repo
+
+
+
+ org.sql2o
+ sql2o-parent
+ 1.4.1-SNAPSHOT
+
+
+
+ lars@aaberg.cc
+ aaberg
+ Lars Aaberg
+ https://github.com/aaberg/
+
+
+ aldenquimby@gmail.com
+ aldenquimby
+ Alden Quimby
+ https://github.com/aldenquimby
+
+
+
+
+
+
+
+ joda-time
+ joda-time
+ 1.6.2
+ true
+
+
+ org.slf4j
+ slf4j-api
+ 1.6.4
+ true
+
+
+
+
+ test
+ com.h2database
+ h2
+ 1.3.160
+
+
+ test
+ org.hsqldb
+ hsqldb
+ 2.2.8
+
+
+ test
+ postgresql
+ postgresql
+ 9.1-901.jdbc4
+
+
+
+
+
+ test
+ org.hibernate
+ hibernate-core
+ 4.3.1.Final
+
+
+ test
+ org.jdbi
+ jdbi
+ 2.53
+
+
+ test
+ org.jooq
+ jooq
+ 3.3.0
+
+
+ test
+ commons-dbutils
+ commons-dbutils
+ 1.5
+
+
+ test
+ org.mybatis
+ mybatis
+ 3.2.4
+
+
+ test
+ org.springframework
+ spring-jdbc
+ 4.0.2.RELEASE
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-release-plugin
+ 2.2.1
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.1
+
+ 1.5
+ 1.5
+ 1.5
+ 1.5
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+ 2.2.1
+
+
+ attach-sources
+
+ jar
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 2.9
+
+
+ attach-javadoc
+
+ jar
+
+
+
+
+ java
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/org/sql2o/Connection.java b/core/src/main/java/org/sql2o/Connection.java
similarity index 100%
rename from src/main/java/org/sql2o/Connection.java
rename to core/src/main/java/org/sql2o/Connection.java
diff --git a/src/main/java/org/sql2o/GenericDatasource.java b/core/src/main/java/org/sql2o/GenericDatasource.java
similarity index 100%
rename from src/main/java/org/sql2o/GenericDatasource.java
rename to core/src/main/java/org/sql2o/GenericDatasource.java
diff --git a/src/main/java/org/sql2o/PojoResultSetIterator.java b/core/src/main/java/org/sql2o/PojoResultSetIterator.java
similarity index 100%
rename from src/main/java/org/sql2o/PojoResultSetIterator.java
rename to core/src/main/java/org/sql2o/PojoResultSetIterator.java
diff --git a/src/main/java/org/sql2o/Query.java b/core/src/main/java/org/sql2o/Query.java
similarity index 100%
rename from src/main/java/org/sql2o/Query.java
rename to core/src/main/java/org/sql2o/Query.java
diff --git a/src/main/java/org/sql2o/QuirksMode.java b/core/src/main/java/org/sql2o/QuirksMode.java
similarity index 100%
rename from src/main/java/org/sql2o/QuirksMode.java
rename to core/src/main/java/org/sql2o/QuirksMode.java
diff --git a/src/main/java/org/sql2o/ResultSetIterable.java b/core/src/main/java/org/sql2o/ResultSetIterable.java
similarity index 100%
rename from src/main/java/org/sql2o/ResultSetIterable.java
rename to core/src/main/java/org/sql2o/ResultSetIterable.java
diff --git a/src/main/java/org/sql2o/ResultSetIteratorBase.java b/core/src/main/java/org/sql2o/ResultSetIteratorBase.java
similarity index 100%
rename from src/main/java/org/sql2o/ResultSetIteratorBase.java
rename to core/src/main/java/org/sql2o/ResultSetIteratorBase.java
diff --git a/src/main/java/org/sql2o/Sql2o.java b/core/src/main/java/org/sql2o/Sql2o.java
similarity index 100%
rename from src/main/java/org/sql2o/Sql2o.java
rename to core/src/main/java/org/sql2o/Sql2o.java
diff --git a/src/main/java/org/sql2o/Sql2oException.java b/core/src/main/java/org/sql2o/Sql2oException.java
similarity index 100%
rename from src/main/java/org/sql2o/Sql2oException.java
rename to core/src/main/java/org/sql2o/Sql2oException.java
diff --git a/src/main/java/org/sql2o/StatementRunnable.java b/core/src/main/java/org/sql2o/StatementRunnable.java
similarity index 100%
rename from src/main/java/org/sql2o/StatementRunnable.java
rename to core/src/main/java/org/sql2o/StatementRunnable.java
diff --git a/src/main/java/org/sql2o/StatementRunnableWithResult.java b/core/src/main/java/org/sql2o/StatementRunnableWithResult.java
similarity index 100%
rename from src/main/java/org/sql2o/StatementRunnableWithResult.java
rename to core/src/main/java/org/sql2o/StatementRunnableWithResult.java
diff --git a/src/main/java/org/sql2o/converters/BigDecimalConverter.java b/core/src/main/java/org/sql2o/converters/BigDecimalConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/BigDecimalConverter.java
rename to core/src/main/java/org/sql2o/converters/BigDecimalConverter.java
diff --git a/src/main/java/org/sql2o/converters/BooleanConverter.java b/core/src/main/java/org/sql2o/converters/BooleanConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/BooleanConverter.java
rename to core/src/main/java/org/sql2o/converters/BooleanConverter.java
diff --git a/src/main/java/org/sql2o/converters/ByteArrayConverter.java b/core/src/main/java/org/sql2o/converters/ByteArrayConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/ByteArrayConverter.java
rename to core/src/main/java/org/sql2o/converters/ByteArrayConverter.java
diff --git a/src/main/java/org/sql2o/converters/ByteConverter.java b/core/src/main/java/org/sql2o/converters/ByteConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/ByteConverter.java
rename to core/src/main/java/org/sql2o/converters/ByteConverter.java
diff --git a/src/main/java/org/sql2o/converters/Convert.java b/core/src/main/java/org/sql2o/converters/Convert.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/Convert.java
rename to core/src/main/java/org/sql2o/converters/Convert.java
diff --git a/src/main/java/org/sql2o/converters/Converter.java b/core/src/main/java/org/sql2o/converters/Converter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/Converter.java
rename to core/src/main/java/org/sql2o/converters/Converter.java
diff --git a/src/main/java/org/sql2o/converters/ConverterException.java b/core/src/main/java/org/sql2o/converters/ConverterException.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/ConverterException.java
rename to core/src/main/java/org/sql2o/converters/ConverterException.java
diff --git a/src/main/java/org/sql2o/converters/DateConverter.java b/core/src/main/java/org/sql2o/converters/DateConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/DateConverter.java
rename to core/src/main/java/org/sql2o/converters/DateConverter.java
diff --git a/src/main/java/org/sql2o/converters/DefaultEnumConverter.java b/core/src/main/java/org/sql2o/converters/DefaultEnumConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/DefaultEnumConverter.java
rename to core/src/main/java/org/sql2o/converters/DefaultEnumConverter.java
diff --git a/src/main/java/org/sql2o/converters/DoubleConverter.java b/core/src/main/java/org/sql2o/converters/DoubleConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/DoubleConverter.java
rename to core/src/main/java/org/sql2o/converters/DoubleConverter.java
diff --git a/src/main/java/org/sql2o/converters/EnumConverter.java b/core/src/main/java/org/sql2o/converters/EnumConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/EnumConverter.java
rename to core/src/main/java/org/sql2o/converters/EnumConverter.java
diff --git a/src/main/java/org/sql2o/converters/FloatConverter.java b/core/src/main/java/org/sql2o/converters/FloatConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/FloatConverter.java
rename to core/src/main/java/org/sql2o/converters/FloatConverter.java
diff --git a/src/main/java/org/sql2o/converters/InputStreamConverter.java b/core/src/main/java/org/sql2o/converters/InputStreamConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/InputStreamConverter.java
rename to core/src/main/java/org/sql2o/converters/InputStreamConverter.java
diff --git a/src/main/java/org/sql2o/converters/IntegerConverter.java b/core/src/main/java/org/sql2o/converters/IntegerConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/IntegerConverter.java
rename to core/src/main/java/org/sql2o/converters/IntegerConverter.java
diff --git a/src/main/java/org/sql2o/converters/JodaTimeConverter.java b/core/src/main/java/org/sql2o/converters/JodaTimeConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/JodaTimeConverter.java
rename to core/src/main/java/org/sql2o/converters/JodaTimeConverter.java
diff --git a/src/main/java/org/sql2o/converters/LocalTimeConverter.java b/core/src/main/java/org/sql2o/converters/LocalTimeConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/LocalTimeConverter.java
rename to core/src/main/java/org/sql2o/converters/LocalTimeConverter.java
diff --git a/src/main/java/org/sql2o/converters/LongConverter.java b/core/src/main/java/org/sql2o/converters/LongConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/LongConverter.java
rename to core/src/main/java/org/sql2o/converters/LongConverter.java
diff --git a/src/main/java/org/sql2o/converters/NumberConverter.java b/core/src/main/java/org/sql2o/converters/NumberConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/NumberConverter.java
rename to core/src/main/java/org/sql2o/converters/NumberConverter.java
diff --git a/src/main/java/org/sql2o/converters/ShortConverter.java b/core/src/main/java/org/sql2o/converters/ShortConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/ShortConverter.java
rename to core/src/main/java/org/sql2o/converters/ShortConverter.java
diff --git a/src/main/java/org/sql2o/converters/StringConverter.java b/core/src/main/java/org/sql2o/converters/StringConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/StringConverter.java
rename to core/src/main/java/org/sql2o/converters/StringConverter.java
diff --git a/src/main/java/org/sql2o/converters/UUIDConverter.java b/core/src/main/java/org/sql2o/converters/UUIDConverter.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/UUIDConverter.java
rename to core/src/main/java/org/sql2o/converters/UUIDConverter.java
diff --git a/src/main/java/org/sql2o/converters/package-info.java b/core/src/main/java/org/sql2o/converters/package-info.java
similarity index 100%
rename from src/main/java/org/sql2o/converters/package-info.java
rename to core/src/main/java/org/sql2o/converters/package-info.java
diff --git a/src/main/java/org/sql2o/data/Column.java b/core/src/main/java/org/sql2o/data/Column.java
similarity index 100%
rename from src/main/java/org/sql2o/data/Column.java
rename to core/src/main/java/org/sql2o/data/Column.java
diff --git a/src/main/java/org/sql2o/data/LazyTable.java b/core/src/main/java/org/sql2o/data/LazyTable.java
similarity index 100%
rename from src/main/java/org/sql2o/data/LazyTable.java
rename to core/src/main/java/org/sql2o/data/LazyTable.java
diff --git a/src/main/java/org/sql2o/data/Row.java b/core/src/main/java/org/sql2o/data/Row.java
similarity index 100%
rename from src/main/java/org/sql2o/data/Row.java
rename to core/src/main/java/org/sql2o/data/Row.java
diff --git a/src/main/java/org/sql2o/data/Table.java b/core/src/main/java/org/sql2o/data/Table.java
similarity index 100%
rename from src/main/java/org/sql2o/data/Table.java
rename to core/src/main/java/org/sql2o/data/Table.java
diff --git a/src/main/java/org/sql2o/data/TableResultSetIterator.java b/core/src/main/java/org/sql2o/data/TableResultSetIterator.java
similarity index 100%
rename from src/main/java/org/sql2o/data/TableResultSetIterator.java
rename to core/src/main/java/org/sql2o/data/TableResultSetIterator.java
diff --git a/src/main/java/org/sql2o/data/package-info.java b/core/src/main/java/org/sql2o/data/package-info.java
similarity index 100%
rename from src/main/java/org/sql2o/data/package-info.java
rename to core/src/main/java/org/sql2o/data/package-info.java
diff --git a/src/main/java/org/sql2o/logging/LocalLoggerFactory.java b/core/src/main/java/org/sql2o/logging/LocalLoggerFactory.java
similarity index 100%
rename from src/main/java/org/sql2o/logging/LocalLoggerFactory.java
rename to core/src/main/java/org/sql2o/logging/LocalLoggerFactory.java
diff --git a/src/main/java/org/sql2o/logging/Logger.java b/core/src/main/java/org/sql2o/logging/Logger.java
similarity index 100%
rename from src/main/java/org/sql2o/logging/Logger.java
rename to core/src/main/java/org/sql2o/logging/Logger.java
diff --git a/src/main/java/org/sql2o/logging/Slf4jLogger.java b/core/src/main/java/org/sql2o/logging/Slf4jLogger.java
similarity index 100%
rename from src/main/java/org/sql2o/logging/Slf4jLogger.java
rename to core/src/main/java/org/sql2o/logging/Slf4jLogger.java
diff --git a/src/main/java/org/sql2o/logging/SysOutLogger.java b/core/src/main/java/org/sql2o/logging/SysOutLogger.java
similarity index 100%
rename from src/main/java/org/sql2o/logging/SysOutLogger.java
rename to core/src/main/java/org/sql2o/logging/SysOutLogger.java
diff --git a/src/main/java/org/sql2o/package-info.java b/core/src/main/java/org/sql2o/package-info.java
similarity index 100%
rename from src/main/java/org/sql2o/package-info.java
rename to core/src/main/java/org/sql2o/package-info.java
diff --git a/src/main/java/org/sql2o/reflection/FieldSetter.java b/core/src/main/java/org/sql2o/reflection/FieldSetter.java
similarity index 100%
rename from src/main/java/org/sql2o/reflection/FieldSetter.java
rename to core/src/main/java/org/sql2o/reflection/FieldSetter.java
diff --git a/src/main/java/org/sql2o/reflection/MethodSetter.java b/core/src/main/java/org/sql2o/reflection/MethodSetter.java
similarity index 100%
rename from src/main/java/org/sql2o/reflection/MethodSetter.java
rename to core/src/main/java/org/sql2o/reflection/MethodSetter.java
diff --git a/src/main/java/org/sql2o/reflection/Pojo.java b/core/src/main/java/org/sql2o/reflection/Pojo.java
similarity index 100%
rename from src/main/java/org/sql2o/reflection/Pojo.java
rename to core/src/main/java/org/sql2o/reflection/Pojo.java
diff --git a/src/main/java/org/sql2o/reflection/PojoMetadata.java b/core/src/main/java/org/sql2o/reflection/PojoMetadata.java
similarity index 100%
rename from src/main/java/org/sql2o/reflection/PojoMetadata.java
rename to core/src/main/java/org/sql2o/reflection/PojoMetadata.java
diff --git a/src/main/java/org/sql2o/reflection/Setter.java b/core/src/main/java/org/sql2o/reflection/Setter.java
similarity index 100%
rename from src/main/java/org/sql2o/reflection/Setter.java
rename to core/src/main/java/org/sql2o/reflection/Setter.java
diff --git a/src/main/java/org/sql2o/reflection/package-info.java b/core/src/main/java/org/sql2o/reflection/package-info.java
similarity index 100%
rename from src/main/java/org/sql2o/reflection/package-info.java
rename to core/src/main/java/org/sql2o/reflection/package-info.java
diff --git a/src/main/java/org/sql2o/tools/ClassUtils.java b/core/src/main/java/org/sql2o/tools/ClassUtils.java
similarity index 100%
rename from src/main/java/org/sql2o/tools/ClassUtils.java
rename to core/src/main/java/org/sql2o/tools/ClassUtils.java
diff --git a/src/main/java/org/sql2o/tools/FeatureDetector.java b/core/src/main/java/org/sql2o/tools/FeatureDetector.java
similarity index 100%
rename from src/main/java/org/sql2o/tools/FeatureDetector.java
rename to core/src/main/java/org/sql2o/tools/FeatureDetector.java
diff --git a/src/main/java/org/sql2o/tools/IOUtils.java b/core/src/main/java/org/sql2o/tools/IOUtils.java
similarity index 100%
rename from src/main/java/org/sql2o/tools/IOUtils.java
rename to core/src/main/java/org/sql2o/tools/IOUtils.java
diff --git a/src/main/java/org/sql2o/tools/NamedParameterStatement.java b/core/src/main/java/org/sql2o/tools/NamedParameterStatement.java
similarity index 100%
rename from src/main/java/org/sql2o/tools/NamedParameterStatement.java
rename to core/src/main/java/org/sql2o/tools/NamedParameterStatement.java
diff --git a/src/main/java/org/sql2o/tools/ResultSetUtils.java b/core/src/main/java/org/sql2o/tools/ResultSetUtils.java
similarity index 100%
rename from src/main/java/org/sql2o/tools/ResultSetUtils.java
rename to core/src/main/java/org/sql2o/tools/ResultSetUtils.java
diff --git a/src/main/java/org/sql2o/tools/UnderscoreToCamelCase.java b/core/src/main/java/org/sql2o/tools/UnderscoreToCamelCase.java
similarity index 100%
rename from src/main/java/org/sql2o/tools/UnderscoreToCamelCase.java
rename to core/src/main/java/org/sql2o/tools/UnderscoreToCamelCase.java
diff --git a/src/main/java/org/sql2o/tools/package-info.java b/core/src/main/java/org/sql2o/tools/package-info.java
similarity index 100%
rename from src/main/java/org/sql2o/tools/package-info.java
rename to core/src/main/java/org/sql2o/tools/package-info.java
diff --git a/src/test/java/org/sql2o/CIEntity.java b/core/src/test/java/org/sql2o/CIEntity.java
similarity index 100%
rename from src/test/java/org/sql2o/CIEntity.java
rename to core/src/test/java/org/sql2o/CIEntity.java
diff --git a/src/test/java/org/sql2o/Entity.java b/core/src/test/java/org/sql2o/Entity.java
similarity index 100%
rename from src/test/java/org/sql2o/Entity.java
rename to core/src/test/java/org/sql2o/Entity.java
diff --git a/src/test/java/org/sql2o/JodaEntity.java b/core/src/test/java/org/sql2o/JodaEntity.java
similarity index 100%
rename from src/test/java/org/sql2o/JodaEntity.java
rename to core/src/test/java/org/sql2o/JodaEntity.java
diff --git a/src/test/java/org/sql2o/Sql2oDataSourceTest.java b/core/src/test/java/org/sql2o/Sql2oDataSourceTest.java
similarity index 100%
rename from src/test/java/org/sql2o/Sql2oDataSourceTest.java
rename to core/src/test/java/org/sql2o/Sql2oDataSourceTest.java
diff --git a/src/test/java/org/sql2o/Sql2oTest.java b/core/src/test/java/org/sql2o/Sql2oTest.java
similarity index 100%
rename from src/test/java/org/sql2o/Sql2oTest.java
rename to core/src/test/java/org/sql2o/Sql2oTest.java
diff --git a/src/test/java/org/sql2o/TypeConvertEntity.java b/core/src/test/java/org/sql2o/TypeConvertEntity.java
similarity index 100%
rename from src/test/java/org/sql2o/TypeConvertEntity.java
rename to core/src/test/java/org/sql2o/TypeConvertEntity.java
diff --git a/src/test/java/org/sql2o/User.java b/core/src/test/java/org/sql2o/User.java
similarity index 100%
rename from src/test/java/org/sql2o/User.java
rename to core/src/test/java/org/sql2o/User.java
diff --git a/src/test/java/org/sql2o/UtilDateEntity.java b/core/src/test/java/org/sql2o/UtilDateEntity.java
similarity index 100%
rename from src/test/java/org/sql2o/UtilDateEntity.java
rename to core/src/test/java/org/sql2o/UtilDateEntity.java
diff --git a/src/test/java/org/sql2o/issues/IssuesTest.java b/core/src/test/java/org/sql2o/issues/IssuesTest.java
similarity index 100%
rename from src/test/java/org/sql2o/issues/IssuesTest.java
rename to core/src/test/java/org/sql2o/issues/IssuesTest.java
diff --git a/src/test/java/org/sql2o/issues/OracleTest.java b/core/src/test/java/org/sql2o/issues/OracleTest.java
similarity index 100%
rename from src/test/java/org/sql2o/issues/OracleTest.java
rename to core/src/test/java/org/sql2o/issues/OracleTest.java
diff --git a/src/test/java/org/sql2o/issues/PostgresTest.java b/core/src/test/java/org/sql2o/issues/PostgresTest.java
similarity index 100%
rename from src/test/java/org/sql2o/issues/PostgresTest.java
rename to core/src/test/java/org/sql2o/issues/PostgresTest.java
diff --git a/src/test/java/org/sql2o/issues/pojos/Issue1Pojo.java b/core/src/test/java/org/sql2o/issues/pojos/Issue1Pojo.java
similarity index 100%
rename from src/test/java/org/sql2o/issues/pojos/Issue1Pojo.java
rename to core/src/test/java/org/sql2o/issues/pojos/Issue1Pojo.java
diff --git a/src/test/java/org/sql2o/issues/pojos/KeyValueEntity.java b/core/src/test/java/org/sql2o/issues/pojos/KeyValueEntity.java
similarity index 100%
rename from src/test/java/org/sql2o/issues/pojos/KeyValueEntity.java
rename to core/src/test/java/org/sql2o/issues/pojos/KeyValueEntity.java
diff --git a/src/test/java/org/sql2o/performance/PerformanceTestBase.java b/core/src/test/java/org/sql2o/performance/PerformanceTestBase.java
similarity index 100%
rename from src/test/java/org/sql2o/performance/PerformanceTestBase.java
rename to core/src/test/java/org/sql2o/performance/PerformanceTestBase.java
diff --git a/src/test/java/org/sql2o/performance/PerformanceTestList.java b/core/src/test/java/org/sql2o/performance/PerformanceTestList.java
similarity index 100%
rename from src/test/java/org/sql2o/performance/PerformanceTestList.java
rename to core/src/test/java/org/sql2o/performance/PerformanceTestList.java
diff --git a/src/test/java/org/sql2o/performance/PojoPerformanceTests.java b/core/src/test/java/org/sql2o/performance/PojoPerformanceTests.java
similarity index 100%
rename from src/test/java/org/sql2o/performance/PojoPerformanceTests.java
rename to core/src/test/java/org/sql2o/performance/PojoPerformanceTests.java
diff --git a/src/test/java/org/sql2o/performance/Post.java b/core/src/test/java/org/sql2o/performance/Post.java
similarity index 100%
rename from src/test/java/org/sql2o/performance/Post.java
rename to core/src/test/java/org/sql2o/performance/Post.java
diff --git a/src/test/java/org/sql2o/performance/UnderscoreToCamelCasePerformanceTests.java b/core/src/test/java/org/sql2o/performance/UnderscoreToCamelCasePerformanceTests.java
similarity index 100%
rename from src/test/java/org/sql2o/performance/UnderscoreToCamelCasePerformanceTests.java
rename to core/src/test/java/org/sql2o/performance/UnderscoreToCamelCasePerformanceTests.java
diff --git a/src/test/java/org/sql2o/pojos/BigDecimalPojo.java b/core/src/test/java/org/sql2o/pojos/BigDecimalPojo.java
similarity index 100%
rename from src/test/java/org/sql2o/pojos/BigDecimalPojo.java
rename to core/src/test/java/org/sql2o/pojos/BigDecimalPojo.java
diff --git a/src/test/java/org/sql2o/pojos/ComplexEntity.java b/core/src/test/java/org/sql2o/pojos/ComplexEntity.java
similarity index 100%
rename from src/test/java/org/sql2o/pojos/ComplexEntity.java
rename to core/src/test/java/org/sql2o/pojos/ComplexEntity.java
diff --git a/src/test/java/org/sql2o/pojos/EntityWithPrivateFields.java b/core/src/test/java/org/sql2o/pojos/EntityWithPrivateFields.java
similarity index 100%
rename from src/test/java/org/sql2o/pojos/EntityWithPrivateFields.java
rename to core/src/test/java/org/sql2o/pojos/EntityWithPrivateFields.java
diff --git a/src/test/java/org/sql2o/pojos/Multi1.java b/core/src/test/java/org/sql2o/pojos/Multi1.java
similarity index 100%
rename from src/test/java/org/sql2o/pojos/Multi1.java
rename to core/src/test/java/org/sql2o/pojos/Multi1.java
diff --git a/src/test/java/org/sql2o/pojos/Multi2.java b/core/src/test/java/org/sql2o/pojos/Multi2.java
similarity index 100%
rename from src/test/java/org/sql2o/pojos/Multi2.java
rename to core/src/test/java/org/sql2o/pojos/Multi2.java
diff --git a/src/test/java/org/sql2o/pojos/StringConversionPojo.java b/core/src/test/java/org/sql2o/pojos/StringConversionPojo.java
similarity index 100%
rename from src/test/java/org/sql2o/pojos/StringConversionPojo.java
rename to core/src/test/java/org/sql2o/pojos/StringConversionPojo.java
diff --git a/src/test/java/org/sql2o/pojos/SuperPojo.java b/core/src/test/java/org/sql2o/pojos/SuperPojo.java
similarity index 100%
rename from src/test/java/org/sql2o/pojos/SuperPojo.java
rename to core/src/test/java/org/sql2o/pojos/SuperPojo.java
diff --git a/src/test/java/org/sql2o/tools/UnderscoreToCamelCaseTests.java b/core/src/test/java/org/sql2o/tools/UnderscoreToCamelCaseTests.java
similarity index 100%
rename from src/test/java/org/sql2o/tools/UnderscoreToCamelCaseTests.java
rename to core/src/test/java/org/sql2o/tools/UnderscoreToCamelCaseTests.java
diff --git a/extensions/pom.xml b/extensions/pom.xml
new file mode 100644
index 00000000..15538d14
--- /dev/null
+++ b/extensions/pom.xml
@@ -0,0 +1,26 @@
+
+ 4.0.0
+ org.sql2o.extensions
+ extensions-parent
+ Sql2o - Extensions
+ pom
+
+
+ org.sql2o
+ sql2o-parent
+ 1.4.1-SNAPSHOT
+
+
+
+ postgres
+
+
+
+
+
+ org.sql2o
+ sql2o
+ 1.4.1-SNAPSHOT
+
+
+
diff --git a/extensions/postgres/pom.xml b/extensions/postgres/pom.xml
new file mode 100644
index 00000000..7a1eb802
--- /dev/null
+++ b/extensions/postgres/pom.xml
@@ -0,0 +1,13 @@
+
+ 4.0.0
+ sql2o-postgres
+ jar
+ sql2o-postgres
+ Postgres extension for sql2o
+ http://www.sql2o.org
+
+ org.sql2o.extensions
+ extensions-parent
+ 1.4.1-SNAPSHOT
+
+
\ No newline at end of file
diff --git a/extensions/postgres/src/main/java/org/sql2o/extensions/postgres/Dummy.java b/extensions/postgres/src/main/java/org/sql2o/extensions/postgres/Dummy.java
new file mode 100644
index 00000000..fe6fe82f
--- /dev/null
+++ b/extensions/postgres/src/main/java/org/sql2o/extensions/postgres/Dummy.java
@@ -0,0 +1,9 @@
+package org.sql2o.extensions.postgres;
+
+/**
+ * Created by lars on 03.04.14.
+ *
+ * Created the class as a placeholder. Should be deleted when actual functionality is added.
+ */
+public class Dummy {
+}
diff --git a/extensions/postgres/src/test/java/org/sql2o/extensions/postgres/DummyTest.java b/extensions/postgres/src/test/java/org/sql2o/extensions/postgres/DummyTest.java
new file mode 100644
index 00000000..d6adddd2
--- /dev/null
+++ b/extensions/postgres/src/test/java/org/sql2o/extensions/postgres/DummyTest.java
@@ -0,0 +1,29 @@
+package org.sql2o.extensions.postgres;
+
+import org.hamcrest.CoreMatchers;
+import org.hamcrest.MatcherAssert;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import static org.hamcrest.CoreMatchers.*;
+import static org.hamcrest.MatcherAssert.*;
+
+/**
+ * Created by lars on 03.04.14.
+ *
+ * Created the class as a placeholder. Should be deleted when actual functionality is added.
+ */
+public class DummyTest {
+
+ Logger logger = LoggerFactory.getLogger(DummyTest.class);
+
+ @Test
+ public void testSomething(){
+ String awesome = "awesome";
+ String postgres = "awesome";
+
+ assertThat(postgres, is(awesome));
+ logger.info("postgres is {}", awesome);
+ }
+}
diff --git a/pom.xml b/pom.xml
index 565fef6a..37c03419 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,29 +1,25 @@
4.0.0
org.sql2o
- sql2o
- jar
+ sql2o-parent
1.4.1-SNAPSHOT
- sql2o
- Easy database query library
+
+ Easy database query library
+
http://www.sql2o.org
-
-
- MIT
- http://www.opensource.org/licenses/MIT
- repo
-
-
+ pom
+
org.sonatype.oss
oss-parent
7
-
- scm:git:git@github.com:aaberg/sql2o.git
- scm:git:git@github.com:aaberg/sql2o.git
- git@github.com:aaberg/sql2o.git
-
+
+
+ core
+ extensions
+
+
lars@aaberg.cc
@@ -39,100 +35,38 @@
-
-
-
- joda-time
- joda-time
- 1.6.2
- true
-
-
- org.slf4j
- slf4j-api
- 1.6.4
- true
-
-
-
+
+
+ MIT
+ http://www.opensource.org/licenses/MIT
+ repo
+
+
+
+
+ scm:git:git@github.com:aaberg/sql2o.git
+ scm:git:git@github.com:aaberg/sql2o.git
+ git@github.com:aaberg/sql2o.git
+
+
+
+
- test
junit
junit
4.11
+ test
+
+
- test
org.slf4j
slf4j-simple
1.6.4
-
-
-
- test
- com.h2database
- h2
- 1.3.160
-
-
- test
- org.hsqldb
- hsqldb
- 2.2.8
-
-
- test
- postgresql
- postgresql
- 9.1-901.jdbc4
-
-
-
-
-
- test
- org.hibernate
- hibernate-core
- 4.3.1.Final
-
-
test
- org.jdbi
- jdbi
- 2.53
-
-
- test
- org.jooq
- jooq
- 3.3.0
-
-
- test
- commons-dbutils
- commons-dbutils
- 1.5
-
-
- test
- org.mybatis
- mybatis
- 3.2.4
-
-
- test
- org.springframework
- spring-jdbc
- 4.0.2.RELEASE
+
test
@@ -140,59 +74,5 @@
guava
15.0
-
-
-
-
-
- org.apache.maven.plugins
- maven-release-plugin
- 2.2.1
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- 3.1
-
- 1.5
- 1.5
- 1.5
- 1.5
-
-
-
-
- org.apache.maven.plugins
- maven-source-plugin
- 2.2.1
-
-
- attach-sources
-
- jar
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
- 2.9
-
-
- attach-javadoc
-
- jar
-
-
-
-
- java
-
-
-
-
\ No newline at end of file