diff --git a/skeletons/Makefile.am b/skeletons/Makefile.am
index 4a07f70..052be94 100644
--- a/skeletons/Makefile.am
+++ b/skeletons/Makefile.am
@@ -1,9 +1,10 @@
 
-SUBDIRS = tests
+SUBDIRS = standard-modules tests
 
 dist_pkgdata_DATA =				\
 		$(srcdir)/*.[ch]		\
 		$(srcdir)/file-dependencies
+
 uninstall-local:
 	-@echo -n " "
 	-rm -f -r $(DESTDIR)$(pkgdatadir)
diff --git a/skeletons/Makefile.in b/skeletons/Makefile.in
index 502fdad..3a83447 100644
--- a/skeletons/Makefile.in
+++ b/skeletons/Makefile.in
@@ -169,7 +169,7 @@
 target_cpu = @target_cpu@
 target_os = @target_os@
 target_vendor = @target_vendor@
-SUBDIRS = tests
+SUBDIRS = standard-modules tests
 dist_pkgdata_DATA = \
 		$(srcdir)/*.[ch]		\
 		$(srcdir)/file-dependencies
@@ -490,6 +490,7 @@
 	tags tags-recursive uninstall uninstall-am \
 	uninstall-dist_pkgdataDATA uninstall-info-am uninstall-local
 
+
 uninstall-local:
 	-@echo -n " "
 	-rm -f -r $(DESTDIR)$(pkgdatadir)
diff --git a/skeletons/standard-modules/ASN1-Object-Identifier-Module.asn1 b/skeletons/standard-modules/ASN1-Object-Identifier-Module.asn1
new file mode 100644
index 0000000..b81e37c
--- /dev/null
+++ b/skeletons/standard-modules/ASN1-Object-Identifier-Module.asn1
@@ -0,0 +1,43 @@
+ASN1-Object-Identifier-Module { joint-iso-itu-t asn1(1) specification(0) modules(0) object-identifiers(1) }  
+DEFINITIONS ::= BEGIN 
+
+ -- NumericString ASN.1 type (see 37.3) -- 
+ numericString OBJECT IDENTIFIER ::=  { joint-iso-itu-t asn1(1) specification(0) characterStrings(1) numericString(0) } 
+
+ -- PrintableString ASN.1 type (see 37.5) -- 
+ printableString OBJECT IDENTIFIER ::= { joint-iso-itu-t asn1(1) specification(0) characterStrings(1) printableString(1) } 
+
+ -- ASN.1 Character Module (see 38.1) -- 
+ asn1CharacterModule OBJECT IDENTIFIER ::= { joint-iso-itu-t asn1(1) specification(0) modules(0) iso10646(0) } 
+
+ -- ASN.1 Object Identifier Module (this module) -- 
+ asn1ObjectIdentifierModule OBJECT IDENTIFIER ::= { joint-iso-itu-t asn1(1) specification(0) modules(0) object-identifiers(1) } 
+
+ -- BER encoding of a single ASN.1 type -- 
+ ber OBJECT IDENTIFIER ::=  { joint-iso-itu-t asn1(1) basic-encoding(1) } 
+
+ -- CER encoding of a single ASN.1 type -- 
+ cer OBJECT IDENTIFIER ::=  { joint-iso-itu-t asn1(1) ber-derived(2) canonical-encoding(0) } 
+
+ -- DER encoding of a single ASN.1 type -- 
+ der OBJECT IDENTIFIER ::=  { joint-iso-itu-t asn1(1) ber-derived(2) distinguished-encoding(1) } 
+
+ -- PER encoding of a single ASN.1 type (basic aligned) -- 
+ perBasicAligned OBJECT IDENTIFIER ::=  { joint-iso-itu-t asn1(1) packed-encoding(3) basic(0) aligned(0) } 
+
+ -- PER encoding of a single ASN.1 type (basic unaligned) -- 
+ perBasicUnaligned OBJECT IDENTIFIER ::=  { joint-iso-itu-t asn1(1) packed-encoding(3) basic(0) unaligned(1) } 
+
+ -- PER encoding of a single ASN.1 type (canonical aligned) -- 
+ perCanonicalAligned OBJECT IDENTIFIER ::= { joint-iso-itu-t asn1(1) packed-encoding(3) canonical(1) aligned(0) } 
+
+ -- PER encoding of a single ASN.1 type (canonical unaligned) -- 
+ perCanonicalUnaligned OBJECT IDENTIFIER ::= { joint-iso-itu-t asn1(1) packed-encoding(3) canonical(1) unaligned(1) } 
+
+ -- XER encoding of a single ASN.1 type (basic) -- 
+ xerBasic OBJECT IDENTIFIER ::=  {joint-iso-itu-t asn1(1) xml-encoding(5) basic(0) } 
+
+ -- XER encoding of a single ASN.1 type (canonical) -- 
+ xerCanonical OBJECT IDENTIFIER ::=  {joint-iso-itu-t asn1(1) xml-encoding(5) canonical(1) } 
+
+END -- ASN1-Object-Identifier-Module --
diff --git a/skeletons/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1 b/skeletons/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1
new file mode 100644
index 0000000..7ba2da4
--- /dev/null
+++ b/skeletons/standard-modules/ASN1C-UsefulInformationObjectClasses.asn1
@@ -0,0 +1,31 @@
+/*
+ * This specification contains pervasive ASN.1 information object classes.
+ * These classes are defined as "useful", and are available in any module
+ * without the necessity for explicit import.
+ */
+ASN1C-UsefulInformationObjectClasses
+	{ iso(1) org(3) dod(6) internet (1) private(4) enterprise(1)
+		spelio(9363) software(1) asn1c(5)
+		standard-modules(3) auto-imported(0) 1 }
+DEFINITIONS ::= BEGIN
+
+	/*
+	 * X.681-0207, Annex A
+	 * The TYPE-IDENTIFIER information object class
+	 */
+	TYPE-IDENTIFIER ::= CLASS {
+	    &id		OBJECT IDENTIFIER UNIQUE,
+	    &Type
+	} WITH SYNTAX { &Type IDENTIFIED BY &id }
+
+	/*
+	 * X.681-0207, Annex B
+	 * The ABSTRACT-SYNTAX information object class
+	 */
+	ABSTRACT-SYNTAX ::= CLASS {
+	    &id		OBJECT IDENTIFIER UNIQUE,
+	    &Type,
+	    &property	BIT STRING { handles-invalid-encodings(0) } DEFAULT {}
+	} WITH SYNTAX { &Type IDENTIFIED BY &id [HAS PROPERTY &property] }
+
+END
diff --git a/skeletons/standard-modules/Makefile.am b/skeletons/standard-modules/Makefile.am
new file mode 100644
index 0000000..cc42fbf
--- /dev/null
+++ b/skeletons/standard-modules/Makefile.am
@@ -0,0 +1,10 @@
+
+smodsdir = $(pkgdatadir)/standard-modules
+
+dist_smods_DATA =				\
+		$(srcdir)/*.asn1		\
+		$(srcdir)/README
+
+uninstall-local:
+	-@echo -n " "
+	-rm -f -r $(DESTDIR)$(smodsdir)
diff --git a/skeletons/standard-modules/Makefile.in b/skeletons/standard-modules/Makefile.in
new file mode 100644
index 0000000..5a0e242
--- /dev/null
+++ b/skeletons/standard-modules/Makefile.in
@@ -0,0 +1,356 @@
+# Makefile.in generated by automake 1.8.4 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004  Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_triplet = @host@
+subdir = skeletons/standard-modules
+DIST_COMMON = README $(dist_smods_DATA) $(srcdir)/Makefile.am \
+	$(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+am__installdirs = "$(DESTDIR)$(smodsdir)"
+dist_smodsDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(dist_smods_DATA)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ADD_CFLAGS = @ADD_CFLAGS@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CONFIGURE_DEPENDS = @CONFIGURE_DEPENDS@
+CPLUSPLUS_FOUND_FALSE = @CPLUSPLUS_FOUND_FALSE@
+CPLUSPLUS_FOUND_TRUE = @CPLUSPLUS_FOUND_TRUE@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+RANLIB = @RANLIB@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+smodsdir = $(pkgdatadir)/standard-modules
+dist_smods_DATA = \
+		$(srcdir)/*.asn1		\
+		$(srcdir)/README
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  skeletons/standard-modules/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --gnu  skeletons/standard-modules/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+	@case '$?' in \
+	  *config.status*) \
+	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+	  *) \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+install-dist_smodsDATA: $(dist_smods_DATA)
+	@$(NORMAL_INSTALL)
+	test -z "$(smodsdir)" || $(mkdir_p) "$(DESTDIR)$(smodsdir)"
+	@list='$(dist_smods_DATA)'; for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  f="`echo $$p | sed -e 's|^.*/||'`"; \
+	  echo " $(dist_smodsDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(smodsdir)/$$f'"; \
+	  $(dist_smodsDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(smodsdir)/$$f"; \
+	done
+
+uninstall-dist_smodsDATA:
+	@$(NORMAL_UNINSTALL)
+	@list='$(dist_smods_DATA)'; for p in $$list; do \
+	  f="`echo $$p | sed -e 's|^.*/||'`"; \
+	  echo " rm -f '$(DESTDIR)$(smodsdir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(smodsdir)/$$f"; \
+	done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+	list='$(DISTFILES)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+	  else \
+	    test -f $(distdir)/$$file \
+	    || cp -p $$d/$$file $(distdir)/$$file \
+	    || exit 1; \
+	  fi; \
+	done
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+	for dir in "$(DESTDIR)$(smodsdir)"; do \
+	  test -z "$$dir" || $(mkdir_p) "$$dir"; \
+	done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	  `test -z '$(STRIP)' || \
+	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+	@echo "This command is intended for maintainers to use"
+	@echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+	-rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-dist_smodsDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-dist_smodsDATA uninstall-info-am \
+	uninstall-local
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+	distclean distclean-generic distclean-libtool distdir dvi \
+	dvi-am html html-am info info-am install install-am \
+	install-data install-data-am install-dist_smodsDATA \
+	install-exec install-exec-am install-info install-info-am \
+	install-man install-strip installcheck installcheck-am \
+	installdirs maintainer-clean maintainer-clean-generic \
+	mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
+	ps ps-am uninstall uninstall-am uninstall-dist_smodsDATA \
+	uninstall-info-am uninstall-local
+
+
+uninstall-local:
+	-@echo -n " "
+	-rm -f -r $(DESTDIR)$(smodsdir)
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/skeletons/standard-modules/README b/skeletons/standard-modules/README
new file mode 100644
index 0000000..014a698
--- /dev/null
+++ b/skeletons/standard-modules/README
@@ -0,0 +1,2 @@
+All *.asn1 files in this directory will be automatically
+picked up by the asn1c during compilation of any user specified module.
