diff --git a/website/.gitignore b/website/.gitignore
index 70355aacfc0edec357c54124801c4cfe64b377d6..264cc5cd40126bb6f93b4c49067f0d10e41a3923 100644
--- a/website/.gitignore
+++ b/website/.gitignore
@@ -1,117 +1,4 @@
-#### joe made this: http://goel.io/joe
-
-#####=== Jekyll ===#####
-
-_site/
-.sass-cache/
-
-#####=== Sass ===#####
-
-.sass-cache
-*.css.map
-
-#####=== OSX ===#####
-.DS_Store
-.AppleDouble
-.LSOverride
-
-# Icon must end with two \r
-Icon
-
-# Thumbnails
-._*
-
-# Files that might appear on external disk
-.Spotlight-V100
-.Trashes
-
-# Directories potentially created on remote AFP share
-.AppleDB
-.AppleDesktop
-Network Trash Folder
-Temporary Items
-.apdisk
-
-#####=== Windows ===#####
-# Windows image file caches
-Thumbs.db
-ehthumbs.db
-
-# Folder config file
-Desktop.ini
-
-# Recycle Bin used on file shares
-$RECYCLE.BIN/
-
-# Windows Installer files
-*.cab
-*.msi
-*.msm
-*.msp
-
-# Windows shortcuts
-*.lnk
-
-#####=== Linux ===#####
-*~
-
-# KDE directory preferences
-.directory
-
-# Linux trash folder which might appear on any partition or disk
-.Trash-*
-
-#####=== JetBrains ===#####
-# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm
-
-*.iml
-
-## Directory-based project format:
-.idea/
-# if you remove the above rule, at least ignore the following:
-
-# User-specific stuff:
-# .idea/workspace.xml
-# .idea/tasks.xml
-# .idea/dictionaries
-
-# Sensitive or high-churn files:
-# .idea/dataSources.ids
-# .idea/dataSources.xml
-# .idea/sqlDataSources.xml
-# .idea/dynamic.xml
-# .idea/uiDesigner.xml
-
-# Gradle:
-# .idea/gradle.xml
-# .idea/libraries
-
-# Mongo Explorer plugin:
-# .idea/mongoSettings.xml
-
-## File-based project format:
-*.ipr
-*.iws
-
-## Plugin-specific files:
-
-# IntelliJ
-out/
-
-# mpeltonen/sbt-idea plugin
-.idea_modules/
-
-# JIRA plugin
-atlassian-ide-plugin.xml
-
-# Crashlytics plugin (for Android Studio and IntelliJ)
-com_crashlytics_export_strings.xml
-crashlytics.properties
-crashlytics-build.properties
-
-# Bundler
-.bundle
-vendor
-
-Gemfile.lock
-PASSWORD
\ No newline at end of file
+output/
+PASSWORD
+lib/python2.7/site-packages/
+*.pyc
\ No newline at end of file
diff --git a/website/Gemfile b/website/Gemfile
deleted file mode 100644
index eceae0670b18004b824b60413608ce34f7b7547c..0000000000000000000000000000000000000000
--- a/website/Gemfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# A sample Gemfile
-source "https://rubygems.org"
-
-gem "jekyll"
diff --git a/website/LICENSE b/website/LICENSE
deleted file mode 100644
index 9cecc1d4669ee8af2ca727a5d8cde10cd8b2d7cc..0000000000000000000000000000000000000000
--- a/website/LICENSE
+++ /dev/null
@@ -1,674 +0,0 @@
-                    GNU GENERAL PUBLIC LICENSE
-                       Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                            Preamble
-
-  The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
-
-  The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works.  By contrast,
-the GNU General Public License is intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users.  We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors.  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
-  To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights.  Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received.  You must make sure that they, too, receive
-or can get the source code.  And you must show them these terms so they
-know their rights.
-
-  Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
-  For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software.  For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
-  Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so.  This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software.  The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable.  Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products.  If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
-  Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary.  To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                       TERMS AND CONDITIONS
-
-  0. Definitions.
-
-  "This License" refers to version 3 of the GNU General Public License.
-
-  "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
-  "The Program" refers to any copyrightable work licensed under this
-License.  Each licensee is addressed as "you".  "Licensees" and
-"recipients" may be individuals or organizations.
-
-  To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy.  The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
-  A "covered work" means either the unmodified Program or a work based
-on the Program.
-
-  To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy.  Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
-  To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies.  Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
-  An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License.  If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
-  1. Source Code.
-
-  The "source code" for a work means the preferred form of the work
-for making modifications to it.  "Object code" means any non-source
-form of a work.
-
-  A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
-  The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form.  A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
-  The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities.  However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work.  For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
-  The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
-  The Corresponding Source for a work in source code form is that
-same work.
-
-  2. Basic Permissions.
-
-  All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met.  This License explicitly affirms your unlimited
-permission to run the unmodified Program.  The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work.  This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
-  You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force.  You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright.  Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
-  Conveying under any other circumstances is permitted solely under
-the conditions stated below.  Sublicensing is not allowed; section 10
-makes it unnecessary.
-
-  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
-  No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
-  When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
-  4. Conveying Verbatim Copies.
-
-  You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
-  You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
-  5. Conveying Modified Source Versions.
-
-  You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
-    a) The work must carry prominent notices stating that you modified
-    it, and giving a relevant date.
-
-    b) The work must carry prominent notices stating that it is
-    released under this License and any conditions added under section
-    7.  This requirement modifies the requirement in section 4 to
-    "keep intact all notices".
-
-    c) You must license the entire work, as a whole, under this
-    License to anyone who comes into possession of a copy.  This
-    License will therefore apply, along with any applicable section 7
-    additional terms, to the whole of the work, and all its parts,
-    regardless of how they are packaged.  This License gives no
-    permission to license the work in any other way, but it does not
-    invalidate such permission if you have separately received it.
-
-    d) If the work has interactive user interfaces, each must display
-    Appropriate Legal Notices; however, if the Program has interactive
-    interfaces that do not display Appropriate Legal Notices, your
-    work need not make them do so.
-
-  A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit.  Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
-  6. Conveying Non-Source Forms.
-
-  You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
-    a) Convey the object code in, or embodied in, a physical product
-    (including a physical distribution medium), accompanied by the
-    Corresponding Source fixed on a durable physical medium
-    customarily used for software interchange.
-
-    b) Convey the object code in, or embodied in, a physical product
-    (including a physical distribution medium), accompanied by a
-    written offer, valid for at least three years and valid for as
-    long as you offer spare parts or customer support for that product
-    model, to give anyone who possesses the object code either (1) a
-    copy of the Corresponding Source for all the software in the
-    product that is covered by this License, on a durable physical
-    medium customarily used for software interchange, for a price no
-    more than your reasonable cost of physically performing this
-    conveying of source, or (2) access to copy the
-    Corresponding Source from a network server at no charge.
-
-    c) Convey individual copies of the object code with a copy of the
-    written offer to provide the Corresponding Source.  This
-    alternative is allowed only occasionally and noncommercially, and
-    only if you received the object code with such an offer, in accord
-    with subsection 6b.
-
-    d) Convey the object code by offering access from a designated
-    place (gratis or for a charge), and offer equivalent access to the
-    Corresponding Source in the same way through the same place at no
-    further charge.  You need not require recipients to copy the
-    Corresponding Source along with the object code.  If the place to
-    copy the object code is a network server, the Corresponding Source
-    may be on a different server (operated by you or a third party)
-    that supports equivalent copying facilities, provided you maintain
-    clear directions next to the object code saying where to find the
-    Corresponding Source.  Regardless of what server hosts the
-    Corresponding Source, you remain obligated to ensure that it is
-    available for as long as needed to satisfy these requirements.
-
-    e) Convey the object code using peer-to-peer transmission, provided
-    you inform other peers where the object code and Corresponding
-    Source of the work are being offered to the general public at no
-    charge under subsection 6d.
-
-  A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
-  A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling.  In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage.  For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product.  A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
-  "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source.  The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
-  If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information.  But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
-  The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed.  Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
-  Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
-  7. Additional Terms.
-
-  "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law.  If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
-  When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it.  (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.)  You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
-  Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
-    a) Disclaiming warranty or limiting liability differently from the
-    terms of sections 15 and 16 of this License; or
-
-    b) Requiring preservation of specified reasonable legal notices or
-    author attributions in that material or in the Appropriate Legal
-    Notices displayed by works containing it; or
-
-    c) Prohibiting misrepresentation of the origin of that material, or
-    requiring that modified versions of such material be marked in
-    reasonable ways as different from the original version; or
-
-    d) Limiting the use for publicity purposes of names of licensors or
-    authors of the material; or
-
-    e) Declining to grant rights under trademark law for use of some
-    trade names, trademarks, or service marks; or
-
-    f) Requiring indemnification of licensors and authors of that
-    material by anyone who conveys the material (or modified versions of
-    it) with contractual assumptions of liability to the recipient, for
-    any liability that these contractual assumptions directly impose on
-    those licensors and authors.
-
-  All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10.  If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term.  If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
-  If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
-  Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
-  8. Termination.
-
-  You may not propagate or modify a covered work except as expressly
-provided under this License.  Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
-  However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
-  Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
-  Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License.  If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
-  9. Acceptance Not Required for Having Copies.
-
-  You are not required to accept this License in order to receive or
-run a copy of the Program.  Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance.  However,
-nothing other than this License grants you permission to propagate or
-modify any covered work.  These actions infringe copyright if you do
-not accept this License.  Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
-  10. Automatic Licensing of Downstream Recipients.
-
-  Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License.  You are not responsible
-for enforcing compliance by third parties with this License.
-
-  An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations.  If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
-  You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License.  For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
-  11. Patents.
-
-  A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based.  The
-work thus licensed is called the contributor's "contributor version".
-
-  A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version.  For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
-  Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
-  In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement).  To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
-  If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients.  "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
-  If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
-  A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License.  You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
-  Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
-  12. No Surrender of Others' Freedom.
-
-  If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all.  For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
-  13. Use with the GNU Affero General Public License.
-
-  Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work.  The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
-
-  14. Revised Versions of this License.
-
-  The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-  Each version is given a distinguishing version number.  If the
-Program specifies that a certain numbered version of the GNU General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation.  If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
-  If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
-  Later license versions may give you additional or different
-permissions.  However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
-  15. Disclaimer of Warranty.
-
-  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-  16. Limitation of Liability.
-
-  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
-  17. Interpretation of Sections 15 and 16.
-
-  If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
-                     END OF TERMS AND CONDITIONS
-
-            How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    {one line to give the program's name and a brief idea of what it does.}
-    Copyright (C) {year}  {name of author}
-
-    This program is free software: you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-Also add information on how to contact you by electronic and paper mail.
-
-  If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
-    {project}  Copyright (C) {year}  {fullname}
-    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
-
-  You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
-<http://www.gnu.org/licenses/>.
-
-  The GNU General Public License does not permit incorporating your program
-into proprietary programs.  If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library.  If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.  But first, please read
-<http://www.gnu.org/philosophy/why-not-lgpl.html>.
diff --git a/website/Makefile b/website/Makefile
index 9c45346d7f2588e7a3f5fa9f31d0e1c8be212db5..951d3c0013b2ff246a6d817e59658ea0b591517c 100644
--- a/website/Makefile
+++ b/website/Makefile
@@ -1,9 +1,11 @@
-.PHONY : build deploy
+.PHONY : build deploy clean
 
 build:
-	jekyll build
-	chmod -R 755 _site/
+	scripts/build.sh
 
 deploy:
 	make build
-	./deploy
\ No newline at end of file
+	scripts/deploy.sh
+
+clean:
+	rm -rf output/
\ No newline at end of file
diff --git a/website/README.md b/website/README.md
index ff4bcd9ddeb8fe8e189b63712217285d14afaab3..8c9472591f17ff8d9b4727dc4f20883841eae4a4 100644
--- a/website/README.md
+++ b/website/README.md
@@ -1,50 +1,28 @@
-# jekyll-theme-hackcss
+Contributing
+----
 
-[Dead simple CSS framework](http://hackcss.com/) now with Jekyll.
+## Making changes
 
-Mobile-ready, modern, stylish, simple.
+To make changes to the website, keep the following in mind:
+- "Pages" go in `content/pages`. Pages are written in Markdown so use the .md
+  extension
+- Images go in `content/images`. An exmple of how to put an image in a page
+  can be seen in `content/pages/home.md`.
+- Files go in `content/files`. An example of how to put a file linke on a page
+  can be seen in `conent/pages/documents.md`.
 
-## Theme modes
+## Building the website
 
-This theme comes in three modes, which could be configured in `_config.yml`.
-
-![Standard](https://raw.githubusercontent.com/wemake-services/jekyll-theme-hackcss/3cbe97b71a56a19eba386dd928e125b71e50c71e/images/standard.png)
-
-![Dark](https://raw.githubusercontent.com/wemake-services/jekyll-theme-hackcss/3cbe97b71a56a19eba386dd928e125b71e50c71e/images/dark.png)
-
-![Markdown](https://raw.githubusercontent.com/wemake-services/jekyll-theme-hackcss/3cbe97b71a56a19eba386dd928e125b71e50c71e/images/markdown.png)
-
-## Installation
-
-Clone this repo. Create your own website. Easy.
-
-## Configuration
-
-See [docs](https://github.com/wemake-services/jekyll-theme-hackcss/blob/master/docs.md).
-
-## License
-
-GNU PGL 3. See [LICENSE](https://github.com/wemake-services/jekyll-theme-hackcss/blob/3cbe97b71a56a19eba386dd928e125b71e50c71e/LICENSE) for more information.
-
-## Contributing
-
-Create or edit a page in this directory. Use the `.md` extension.
-
-When you are ready to build the site:
+To build the website:
 
 ```
 make build
 ```
 
-If you want to run the site on localhost:
+## Deploying the website
 
-```
-bundle exec jekyll serve
-# http://localhost:4000
-```
-
-To deploy the website to our team url:
+To deploy the website to our domain `may1716.sd.ece.iastate.edu`:
 
 ```
 make deploy
-```
\ No newline at end of file
+```
diff --git a/website/_config.yml b/website/_config.yml
deleted file mode 100644
index 0e913a0e9fc8ac062f23fcc7046a5718f0e72fe9..0000000000000000000000000000000000000000
--- a/website/_config.yml
+++ /dev/null
@@ -1,56 +0,0 @@
-# Welcome to Jekyll!
-#
-# This config file is meant for settings that affect your whole blog, values
-# which you are expected to set up once and rarely need to edit after that.
-# For technical reasons, this file is *NOT* reloaded automatically when you use
-# 'jekyll serve'. If you change this file, please restart the server process.
-
-# Site settings
-title: MicroCART
-description: > # this means to ignore newlines until "baseurl:"
-  A minimalistic theme for Jekyll, based on hack.css
-repository: https://git.ece.iastate.edu/danc/MicroCART_17-18.git
-baseurl: ""  # the subpath of your site, e.g. /blog
-url: "http://may1716.sd.ece.iastate.edu/" # the base hostname & protocol for your site
-
-# Build settings
-markdown: kramdown
-
-# Sass settings
-sass:
-  style: compressed
-
-# Theme settings
-theme_mode: standard  # choices are: 'dark', 'standard', 'markdown'
-
-# Customizations
-your_name: Microcart F16 - S17 Team
-email: microcart_f2016@iastate.edu
-
-navigation:
-  - text: Home
-    url: /
-  - text: Team Members
-    url: /members.html
-  - text: Documents
-    url: /documents.html
-#  - text: Quadcopter
-#    url: /quadcopter.html
-#  - text: Ground Station
-#    url: /ground.html
-#  - text: Controls
-#    url: /controls.html
-
-projects:
-
-social:
-
-exclude:
-    - Gemfile
-    - Gemfile.lock
-    - vendor
-    - Makefile
-    - README.md
-    - LICENSE
-    - deploy
-    - PASSWORD
\ No newline at end of file
diff --git a/website/_includes/footer.html b/website/_includes/footer.html
deleted file mode 100644
index 0d144057c9596f851899de355a93b34ba5d2a0a6..0000000000000000000000000000000000000000
--- a/website/_includes/footer.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<footer>
-  <hr />
-
-  <h3 class="footer-heading">{{ site.title }}</h3>
-
-  <div class="grid t-hackcss-sm-reversed-grid">
-
-    <div class="cell -5of12">
-      <div class="contact-list">
-        <p>
-          {{ site.your_name }},
-          <a href="mailto:{{ site.email }}">{{ site.email }}</a>
-        </p>
-
-        {% for social in site.social %}
-          {% assign template = social.service|prepend:"icon-"|append:".html" %}
-          <span class="t-hackcss-social">
-            <i class="t-hackcss-icon">{% include {{ template }} %}</i>
-            <a href="{{ social.link }}">{{ social.username }}</a>
-          </span>
-        {% endfor %}
-      </div>
-    </div>
-
-    <div id="footer-spacer" class="cell -1of12"></div>
-
-    <div class="cell -6of12">
-      <p>{{ site.description }}</p>
-    </div>
-  </div>
-
-</footer>
diff --git a/website/_includes/github-ribbon.html b/website/_includes/github-ribbon.html
deleted file mode 100644
index 5303cfa110e1fb25c81ca423b9e5a6a6444bece6..0000000000000000000000000000000000000000
--- a/website/_includes/github-ribbon.html
+++ /dev/null
@@ -1,11 +0,0 @@
-<a href="{{ site.repository }}" class="github-corner">
-
-{% if site.theme_mode != 'dark' %}
-  <svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#fff; position: absolute; top: 0; border: 0; right: 0;"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg>
-{% else %}
-  <svg width="80" height="80" viewBox="0 0 250 250" style="fill:#fff; color:#151513; position: absolute; top: 0; border: 0; right: 0;"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg>
-{% endif %}
-
-</a>
-
-<style>.github-corner:hover .octo-arm{animation:octocat-wave 560ms ease-in-out}@keyframes octocat-wave{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)}}@media (max-width:500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave 560ms ease-in-out}}</style>
diff --git a/website/_includes/head.html b/website/_includes/head.html
deleted file mode 100644
index 5597fed155d5648b51d71838b3248bb6df06765b..0000000000000000000000000000000000000000
--- a/website/_includes/head.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<head>
-  <meta charset="utf-8">
-  <meta http-equiv="X-UA-Compatible" content="IE=edge">
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-
-  <link rel="stylesheet" href="http://hackcss.com/prism.css">
-
-  <!-- Meta information -->
-  <title>{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}</title>
-  <meta name="description"
-        content="{% if page.excerpt %}{{ page.excerpt | strip_html | strip_newlines | truncate: 160 }}{% else %}{{ site.description }}{% endif %}">
-  <link rel="canonical"
-        href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}" />
-
-  <!-- hack.css -->
-  <link rel="stylesheet" href="https://npmcdn.com/hack/dist/hack.css" />
-  {% if site.theme_mode == 'standard' %}
-  <link rel="stylesheet" href="https://npmcdn.com/hack/dist/standard.css" />
-  {% elsif site.theme_mode == 'dark' %}
-  <link rel="stylesheet" href="https://npmcdn.com/hack/dist/dark.css" />
-  {% endif %}
-
-  <!-- Custom style -->
-  <link rel="stylesheet" href="{{ "/css/main.css" | prepend: site.baseurl }}" />
-
-  <!-- Feed -->
-  <link rel="alternate" type="application/rss+xml" title="{{ site.title }}"
-        href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}" />
-
-  <!-- Add seo with 'jekyll-seo' plugin! -->
-</head>
diff --git a/website/_includes/icon-github.html b/website/_includes/icon-github.html
deleted file mode 100644
index 6f8991fe2af34ea8a300197ebd8baad61ebdb6c1..0000000000000000000000000000000000000000
--- a/website/_includes/icon-github.html
+++ /dev/null
@@ -1 +0,0 @@
-<svg viewBox="0 0 16 16"><path fill="#828282" d="M7.999,0.431c-4.285,0-7.76,3.474-7.76,7.761 c0,3.428,2.223,6.337,5.307,7.363c0.388,0.071,0.53-0.168,0.53-0.374c0-0.184-0.007-0.672-0.01-1.32 c-2.159,0.469-2.614-1.04-2.614-1.04c-0.353-0.896-0.862-1.135-0.862-1.135c-0.705-0.481,0.053-0.472,0.053-0.472 c0.779,0.055,1.189,0.8,1.189,0.8c0.692,1.186,1.816,0.843,2.258,0.645c0.071-0.502,0.271-0.843,0.493-1.037 C4.86,11.425,3.049,10.76,3.049,7.786c0-0.847,0.302-1.54,0.799-2.082C3.768,5.507,3.501,4.718,3.924,3.65 c0,0,0.652-0.209,2.134,0.796C6.677,4.273,7.34,4.187,8,4.184c0.659,0.003,1.323,0.089,1.943,0.261 c1.482-1.004,2.132-0.796,2.132-0.796c0.423,1.068,0.157,1.857,0.077,2.054c0.497,0.542,0.798,1.235,0.798,2.082 c0,2.981-1.814,3.637-3.543,3.829c0.279,0.24,0.527,0.713,0.527,1.437c0,1.037-0.01,1.874-0.01,2.129 c0,0.208,0.14,0.449,0.534,0.373c3.081-1.028,5.302-3.935,5.302-7.362C15.76,3.906,12.285,0.431,7.999,0.431z"></path></svg>
diff --git a/website/_includes/icon-twitter.html b/website/_includes/icon-twitter.html
deleted file mode 100644
index dcf660e7bb376738d0129a1f8e3e8acbc6ac2aca..0000000000000000000000000000000000000000
--- a/website/_includes/icon-twitter.html
+++ /dev/null
@@ -1 +0,0 @@
-<svg viewBox="0 0 16 16"><path fill="#828282" d="M15.969,3.058c-0.586,0.26-1.217,0.436-1.878,0.515c0.675-0.405,1.194-1.045,1.438-1.809c-0.632,0.375-1.332,0.647-2.076,0.793c-0.596-0.636-1.446-1.033-2.387-1.033c-1.806,0-3.27,1.464-3.27,3.27 c0,0.256,0.029,0.506,0.085,0.745C5.163,5.404,2.753,4.102,1.14,2.124C0.859,2.607,0.698,3.168,0.698,3.767 c0,1.134,0.577,2.135,1.455,2.722C1.616,6.472,1.112,6.325,0.671,6.08c0,0.014,0,0.027,0,0.041c0,1.584,1.127,2.906,2.623,3.206 C3.02,9.402,2.731,9.442,2.433,9.442c-0.211,0-0.416-0.021-0.615-0.059c0.416,1.299,1.624,2.245,3.055,2.271 c-1.119,0.877-2.529,1.4-4.061,1.4c-0.264,0-0.524-0.015-0.78-0.046c1.447,0.928,3.166,1.469,5.013,1.469 c6.015,0,9.304-4.983,9.304-9.304c0-0.142-0.003-0.283-0.009-0.423C14.976,4.29,15.531,3.714,15.969,3.058z"/></svg>
diff --git a/website/_includes/navigation.html b/website/_includes/navigation.html
deleted file mode 100644
index 0ec42d4ee051c3b64eba141d71cab80a1769ed4d..0000000000000000000000000000000000000000
--- a/website/_includes/navigation.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<div class="t-hackcss-navigation">
-  <h2>Menu</h2>
-
-  <nav class="menu" role="menubar">
-    {% assign url = page.url|remove:'index.html' %}
-    {% for link in site.navigation %}
-      <a class="menu-item {% if url == link.url %}active{% endif %}"
-        role="menuitem" href="{{ link.url }}" title="{{ link.title }}">
-        {{ link.text }} <div class="pull-right">»</div>
-      </a>
-    {% endfor %}
-  </nav>
-
-</div>
diff --git a/website/_layouts/default.html b/website/_layouts/default.html
deleted file mode 100644
index 5573896c0fe460e9b4751fc608552ec3b5ca58e8..0000000000000000000000000000000000000000
--- a/website/_layouts/default.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!DOCTYPE html>
-<html>
-
-  {% include head.html %}
-
-
-  {% if site.theme_mode == 'markdown' %}
-  <body class="hack">
-  {% elsif site.theme_mode == 'standard' %}
-  <body class="standard">
-  {% elsif site.theme_mode == 'dark' %}
-  <body class="hack dark">
-  {% endif %}
-
-    <div class="container">
-      <div class="grid">
-        <aside class="cell -3of12" role="navigation">
-          {% include navigation.html %}
-        </aside>
-
-        <main class="cell -9of12">
-          {{ content }}
-        </main>
-      </div>
-
-    {% include footer.html %}
-
-    </div>
-  </body>
-
-</html>
diff --git a/website/_layouts/post.html b/website/_layouts/post.html
deleted file mode 100644
index 5d9023adb1fc4537f286f37ec812fe841f161a4d..0000000000000000000000000000000000000000
--- a/website/_layouts/post.html
+++ /dev/null
@@ -1,27 +0,0 @@
----
-layout: default
----
-<article class="post" itemscope itemtype="http://schema.org/BlogPosting">
-
-  <header class="post-header">
-    <h1 class="post-title" itemprop="name headline">{{ page.title }}</h1>
-    <p class="post-meta">
-      <time datetime="{{ page.date | date_to_xmlschema }}"
-            itemprop="datePublished"
-            class="media-heading">
-        {{ page.date | date: "%b %-d, %Y" }}
-      </time>
-
-      {% if page.author %}
-        <span itemprop="author" itemscope itemtype="http://schema.org/Person">
-          <span itemprop="name">{{ page.author }}</span>
-        </span>
-      {% endif %}
-    </p>
-  </header>
-
-  <div class="post-content" itemprop="articleBody">
-    {{ content }}
-  </div>
-
-</article>
diff --git a/website/_sass/_highlight.scss b/website/_sass/_highlight.scss
deleted file mode 100644
index 723e5a6e6c0c166f85cf28a01b638ca6c7a8a3e7..0000000000000000000000000000000000000000
--- a/website/_sass/_highlight.scss
+++ /dev/null
@@ -1,11 +0,0 @@
-// This file only deal with code highlighting
-
-code.highlighter-rouge {
-  padding: 0;
-  padding-top: 0.2em;
-  padding-bottom: 0.2em;
-  margin: 0;
-  font-size: 85%;
-  background-color: rgba(0,0,0,0.04);
-  border-radius: 3px;
-}
diff --git a/website/_sass/_styles.scss b/website/_sass/_styles.scss
deleted file mode 100644
index 5fbc13df70c65577500be2ab72665120b46cd4d8..0000000000000000000000000000000000000000
--- a/website/_sass/_styles.scss
+++ /dev/null
@@ -1,74 +0,0 @@
-// This file contains custom (non hack.css) styles
-
-.t-hackcss {  // Main prefix
-
-  // navigation.html
-
-  &-navigation {
-    padding-right: $spacing-unit;
-  }
-
-  &-social {
-    display: inline-block;
-  }
-
-  &-social + &-social {
-    padding-left: $spacing-unit;
-  }
-
-  &-sm-reversed-grid.grid {
-    @include media-query($on-palm) {
-      flex-direction: column-reverse;
-    }
-  }
-
-  &-icon {
-    display: inline-block;
-    vertical-align: middle;
-    width: $icon-size;
-    height: $icon-size;
-
-    > svg {
-      width: $icon-size;
-    }
-  }
-
-  // examples.html
-
-  &-media-shift {
-    max-width: $image-size;
-  }
-
-  &-media-image {
-    display: block;
-    max-width: 100%;
-    height: auto;
-  }
-
-  &-cards {
-    flex-wrap: wrap;
-    @include media-query($on-palm) {
-      flex-wrap: nowrap;
-    }
-  }
-
-  &-cards-cell {
-    padding-bottom: $spacing-unit;
-    padding-right: $spacing-unit;
-  }
-
-  &-cards-text {
-    margin: 0
-  }
-
-  &-cards-image {
-    display: block;
-    max-width: 50%;
-    height: auto;
-    margin: 0 auto;
-  }
-
-  &-cards-link {
-    text-align: center;
-  }
-}
diff --git a/website/bin/activate b/website/bin/activate
new file mode 100644
index 0000000000000000000000000000000000000000..89d2910c3ae82cdc202a03f5625140513bbbe62a
--- /dev/null
+++ b/website/bin/activate
@@ -0,0 +1,80 @@
+# This file must be used with "source bin/activate" *from bash*
+# you cannot run it directly
+
+deactivate () {
+    unset pydoc
+
+    # reset old environment variables
+    if [ -n "$_OLD_VIRTUAL_PATH" ] ; then
+        PATH="$_OLD_VIRTUAL_PATH"
+        export PATH
+        unset _OLD_VIRTUAL_PATH
+    fi
+    if [ -n "$_OLD_VIRTUAL_PYTHONHOME" ] ; then
+        PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
+        export PYTHONHOME
+        unset _OLD_VIRTUAL_PYTHONHOME
+    fi
+
+    # This should detect bash and zsh, which have a hash command that must
+    # be called to get it to forget past commands.  Without forgetting
+    # past commands the $PATH changes we made may not be respected
+    if [ -n "$BASH" -o -n "$ZSH_VERSION" ] ; then
+        hash -r 2>/dev/null
+    fi
+
+    if [ -n "$_OLD_VIRTUAL_PS1" ] ; then
+        PS1="$_OLD_VIRTUAL_PS1"
+        export PS1
+        unset _OLD_VIRTUAL_PS1
+    fi
+
+    unset VIRTUAL_ENV
+    if [ ! "$1" = "nondestructive" ] ; then
+    # Self destruct!
+        unset -f deactivate
+    fi
+}
+
+# unset irrelevant variables
+deactivate nondestructive
+
+VIRTUAL_ENV="/home/bbartels/Education/Semester11/ee491/project/website"
+export VIRTUAL_ENV
+
+_OLD_VIRTUAL_PATH="$PATH"
+PATH="$VIRTUAL_ENV/bin:$PATH"
+export PATH
+
+# unset PYTHONHOME if set
+# this will fail if PYTHONHOME is set to the empty string (which is bad anyway)
+# could use `if (set -u; : $PYTHONHOME) ;` in bash
+if [ -n "$PYTHONHOME" ] ; then
+    _OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
+    unset PYTHONHOME
+fi
+
+if [ -z "$VIRTUAL_ENV_DISABLE_PROMPT" ] ; then
+    _OLD_VIRTUAL_PS1="$PS1"
+    if [ "x" != x ] ; then
+        PS1="$PS1"
+    else
+    if [ "`basename \"$VIRTUAL_ENV\"`" = "__" ] ; then
+        # special case for Aspen magic directories
+        # see http://www.zetadev.com/software/aspen/
+        PS1="[`basename \`dirname \"$VIRTUAL_ENV\"\``] $PS1"
+    else
+        PS1="(`basename \"$VIRTUAL_ENV\"`)$PS1"
+    fi
+    fi
+    export PS1
+fi
+
+alias pydoc="python -m pydoc"
+
+# This should detect bash and zsh, which have a hash command that must
+# be called to get it to forget past commands.  Without forgetting
+# past commands the $PATH changes we made may not be respected
+if [ -n "$BASH" -o -n "$ZSH_VERSION" ] ; then
+    hash -r 2>/dev/null
+fi
diff --git a/website/bin/activate.csh b/website/bin/activate.csh
new file mode 100644
index 0000000000000000000000000000000000000000..b31a5fbe538a38b53e561eaa34635d8829875793
--- /dev/null
+++ b/website/bin/activate.csh
@@ -0,0 +1,42 @@
+# This file must be used with "source bin/activate.csh" *from csh*.
+# You cannot run it directly.
+# Created by Davide Di Blasi <davidedb@gmail.com>.
+
+alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate && unalias pydoc'
+
+# Unset irrelevant variables.
+deactivate nondestructive
+
+setenv VIRTUAL_ENV "/home/bbartels/Education/Semester11/ee491/project/website"
+
+set _OLD_VIRTUAL_PATH="$PATH"
+setenv PATH "$VIRTUAL_ENV/bin:$PATH"
+
+
+
+if ("" != "") then
+    set env_name = ""
+else
+    if (`basename "$VIRTUAL_ENV"` == "__") then
+        # special case for Aspen magic directories
+        # see http://www.zetadev.com/software/aspen/
+        set env_name = `basename \`dirname "$VIRTUAL_ENV"\``
+    else
+        set env_name = `basename "$VIRTUAL_ENV"`
+    endif
+endif
+
+# Could be in a non-interactive environment,
+# in which case, $prompt is undefined and we wouldn't
+# care about the prompt anyway.
+if ( $?prompt ) then
+    set _OLD_VIRTUAL_PROMPT="$prompt"
+    set prompt = "[$env_name] $prompt"
+endif
+
+unset env_name
+
+alias pydoc python -m pydoc
+
+rehash
+
diff --git a/website/bin/activate.fish b/website/bin/activate.fish
new file mode 100644
index 0000000000000000000000000000000000000000..f8ae4c24b9e7c691f35657d109f30677c55f62b3
--- /dev/null
+++ b/website/bin/activate.fish
@@ -0,0 +1,74 @@
+# This file must be used with "source bin/activate.fish" *from fish* (http://fishshell.com)
+# you cannot run it directly
+
+function deactivate  -d "Exit virtualenv and return to normal shell environment"
+    # reset old environment variables
+    if test -n "$_OLD_VIRTUAL_PATH" 
+        set -gx PATH $_OLD_VIRTUAL_PATH
+        set -e _OLD_VIRTUAL_PATH
+    end
+    if test -n "$_OLD_VIRTUAL_PYTHONHOME"
+        set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME
+        set -e _OLD_VIRTUAL_PYTHONHOME
+    end
+    
+    if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
+        # set an empty local fish_function_path, so fish_prompt doesn't automatically reload
+        set -l fish_function_path
+        # erase the virtualenv's fish_prompt function, and restore the original
+        functions -e fish_prompt
+        functions -c _old_fish_prompt fish_prompt
+        functions -e _old_fish_prompt
+        set -e _OLD_FISH_PROMPT_OVERRIDE
+    end
+    
+    set -e VIRTUAL_ENV
+    if test "$argv[1]" != "nondestructive"
+        # Self destruct!
+        functions -e deactivate
+    end
+end
+
+# unset irrelevant variables
+deactivate nondestructive
+
+set -gx VIRTUAL_ENV "/home/bbartels/Education/Semester11/ee491/project/website"
+
+set -gx _OLD_VIRTUAL_PATH $PATH
+set -gx PATH "$VIRTUAL_ENV/bin" $PATH
+
+# unset PYTHONHOME if set
+if set -q PYTHONHOME
+    set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
+    set -e PYTHONHOME
+end
+
+if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
+    # fish uses a function instead of an env var to generate the prompt.
+    
+    # copy the current fish_prompt function as the function _old_fish_prompt
+    functions -c fish_prompt _old_fish_prompt
+    
+    # with the original prompt function copied, we can override with our own.
+    function fish_prompt
+        # Prompt override?
+        if test -n ""
+            printf "%s%s" "" (set_color normal)
+            _old_fish_prompt
+            return
+        end
+        # ...Otherwise, prepend env
+        set -l _checkbase (basename "$VIRTUAL_ENV")
+        if test $_checkbase = "__"
+            # special case for Aspen magic directories
+            # see http://www.zetadev.com/software/aspen/
+            printf "%s[%s]%s " (set_color -b blue white) (basename (dirname "$VIRTUAL_ENV")) (set_color normal) 
+            _old_fish_prompt
+        else
+            printf "%s(%s)%s" (set_color -b blue white) (basename "$VIRTUAL_ENV") (set_color normal)
+            _old_fish_prompt
+        end
+    end 
+    
+    set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
+end
diff --git a/website/bin/activate_this.py b/website/bin/activate_this.py
new file mode 100644
index 0000000000000000000000000000000000000000..f18193bf8109396374fb7811f0f261be27f4c143
--- /dev/null
+++ b/website/bin/activate_this.py
@@ -0,0 +1,34 @@
+"""By using execfile(this_file, dict(__file__=this_file)) you will
+activate this virtualenv environment.
+
+This can be used when you must use an existing Python interpreter, not
+the virtualenv bin/python
+"""
+
+try:
+    __file__
+except NameError:
+    raise AssertionError(
+        "You must run this like execfile('path/to/activate_this.py', dict(__file__='path/to/activate_this.py'))")
+import sys
+import os
+
+old_os_path = os.environ.get('PATH', '')
+os.environ['PATH'] = os.path.dirname(os.path.abspath(__file__)) + os.pathsep + old_os_path
+base = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
+if sys.platform == 'win32':
+    site_packages = os.path.join(base, 'Lib', 'site-packages')
+else:
+    site_packages = os.path.join(base, 'lib', 'python%s' % sys.version[:3], 'site-packages')
+prev_sys_path = list(sys.path)
+import site
+site.addsitedir(site_packages)
+sys.real_prefix = sys.prefix
+sys.prefix = base
+# Move the added items to the front of the path:
+new_sys_path = []
+for item in list(sys.path):
+    if item not in prev_sys_path:
+        new_sys_path.append(item)
+        sys.path.remove(item)
+sys.path[:0] = new_sys_path
diff --git a/website/bin/easy_install b/website/bin/easy_install
new file mode 100644
index 0000000000000000000000000000000000000000..e01e3b58e11b36b5210ca36ee1351a8d3fa87416
--- /dev/null
+++ b/website/bin/easy_install
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from setuptools.command.easy_install import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/easy_install-2.7 b/website/bin/easy_install-2.7
new file mode 100644
index 0000000000000000000000000000000000000000..e01e3b58e11b36b5210ca36ee1351a8d3fa87416
--- /dev/null
+++ b/website/bin/easy_install-2.7
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from setuptools.command.easy_install import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/markdown_py b/website/bin/markdown_py
new file mode 100644
index 0000000000000000000000000000000000000000..8f51cf454a9ba416febaa767ae6ea991a5a78dfc
--- /dev/null
+++ b/website/bin/markdown_py
@@ -0,0 +1,34 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+"""
+Python Markdown, the Command Line Script
+========================================
+
+This is the command line script for Python Markdown.
+
+Basic use from the command line:
+
+    markdown source.txt > destination.html
+
+Run "markdown --help" to see more options.
+
+See markdown/__init__.py for information on using Python Markdown as a module.
+
+## Authors and License
+
+Started by [Manfred Stienstra](http://www.dwerg.net/).  Continued and
+maintained  by [Yuri Takhteyev](http://www.freewisdom.org), [Waylan
+Limberg](http://achinghead.com/) and [Artem Yunusov](http://blog.splyer.com).
+
+Contact: markdown@freewisdom.org
+
+Copyright 2007, 2008 The Python Markdown Project (v. 1.7 and later)
+Copyright 200? Django Software Foundation (OrderedDict implementation)
+Copyright 2004, 2005, 2006 Yuri Takhteyev (v. 0.2-1.6b)
+Copyright 2004 Manfred Stienstra (the original version)
+
+License: BSD (see docs/LICENSE for details).
+"""
+
+if __name__ == '__main__':
+    from markdown.__main__ import run
+    run()
diff --git a/website/bin/pelican b/website/bin/pelican
new file mode 100644
index 0000000000000000000000000000000000000000..68ae3198a69b80c245e70e5c4a0dafe66b3db724
--- /dev/null
+++ b/website/bin/pelican
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from pelican import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/pelican-import b/website/bin/pelican-import
new file mode 100644
index 0000000000000000000000000000000000000000..6c15f72f151e2aadc3e4916a36901b1b0a20dc70
--- /dev/null
+++ b/website/bin/pelican-import
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from pelican.tools.pelican_import import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/pelican-quickstart b/website/bin/pelican-quickstart
new file mode 100644
index 0000000000000000000000000000000000000000..92f61a07b18dd0a3494482879d1bc8f036a2d708
--- /dev/null
+++ b/website/bin/pelican-quickstart
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from pelican.tools.pelican_quickstart import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/pelican-themes b/website/bin/pelican-themes
new file mode 100644
index 0000000000000000000000000000000000000000..de9c3119f37a840f5fda1ebb7debbf54f6d938b2
--- /dev/null
+++ b/website/bin/pelican-themes
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from pelican.tools.pelican_themes import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/pip b/website/bin/pip
new file mode 100644
index 0000000000000000000000000000000000000000..656cbf987f69ecae822bd7504231c65b72085779
--- /dev/null
+++ b/website/bin/pip
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from pip import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/pip2 b/website/bin/pip2
new file mode 100644
index 0000000000000000000000000000000000000000..656cbf987f69ecae822bd7504231c65b72085779
--- /dev/null
+++ b/website/bin/pip2
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from pip import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/pip2.7 b/website/bin/pip2.7
new file mode 100644
index 0000000000000000000000000000000000000000..656cbf987f69ecae822bd7504231c65b72085779
--- /dev/null
+++ b/website/bin/pip2.7
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from pip import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/pygmentize b/website/bin/pygmentize
new file mode 100644
index 0000000000000000000000000000000000000000..00cbeb629f4dfa2098ae6eb5adae421ad86b0b36
--- /dev/null
+++ b/website/bin/pygmentize
@@ -0,0 +1,11 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# -*- coding: utf-8 -*-
+import re
+import sys
+
+from pygments.cmdline import main
+
+if __name__ == '__main__':
+    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
+    sys.exit(main())
diff --git a/website/bin/python b/website/bin/python
new file mode 100644
index 0000000000000000000000000000000000000000..3a0430bec51d64ff8fe1af832c0525e4d97c5367
Binary files /dev/null and b/website/bin/python differ
diff --git a/website/bin/python2 b/website/bin/python2
new file mode 120000
index 0000000000000000000000000000000000000000..d8654aa0e2f2f3c1760e0fcbcbb52c1c5941fba7
--- /dev/null
+++ b/website/bin/python2
@@ -0,0 +1 @@
+python
\ No newline at end of file
diff --git a/website/bin/python2.7 b/website/bin/python2.7
new file mode 120000
index 0000000000000000000000000000000000000000..d8654aa0e2f2f3c1760e0fcbcbb52c1c5941fba7
--- /dev/null
+++ b/website/bin/python2.7
@@ -0,0 +1 @@
+python
\ No newline at end of file
diff --git a/website/bin/rst2html.py b/website/bin/rst2html.py
new file mode 100644
index 0000000000000000000000000000000000000000..b18d204c89d938ee789bb844839a7d11c899bad9
--- /dev/null
+++ b/website/bin/rst2html.py
@@ -0,0 +1,23 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rst2html.py 4564 2006-05-21 20:44:42Z wiemann $
+# Author: David Goodger <goodger@python.org>
+# Copyright: This module has been placed in the public domain.
+
+"""
+A minimal front end to the Docutils Publisher, producing HTML.
+"""
+
+try:
+    import locale
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline, default_description
+
+
+description = ('Generates (X)HTML documents from standalone reStructuredText '
+               'sources.  ' + default_description)
+
+publish_cmdline(writer_name='html', description=description)
diff --git a/website/bin/rst2latex.py b/website/bin/rst2latex.py
new file mode 100644
index 0000000000000000000000000000000000000000..e35db08dbec4b06eaaae9f626a6f9da43476270f
--- /dev/null
+++ b/website/bin/rst2latex.py
@@ -0,0 +1,26 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rst2latex.py 5905 2009-04-16 12:04:49Z milde $
+# Author: David Goodger <goodger@python.org>
+# Copyright: This module has been placed in the public domain.
+
+"""
+A minimal front end to the Docutils Publisher, producing LaTeX.
+"""
+
+try:
+    import locale
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline
+
+description = ('Generates LaTeX documents from standalone reStructuredText '
+               'sources. '
+               'Reads from <source> (default is stdin) and writes to '
+               '<destination> (default is stdout).  See '
+               '<http://docutils.sourceforge.net/docs/user/latex.html> for '
+               'the full reference.')
+
+publish_cmdline(writer_name='latex', description=description)
diff --git a/website/bin/rst2man.py b/website/bin/rst2man.py
new file mode 100644
index 0000000000000000000000000000000000000000..62b4f15a62689894502b4f5f8eb1cd2349bcbdb1
--- /dev/null
+++ b/website/bin/rst2man.py
@@ -0,0 +1,26 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# Author: 
+# Contact: grubert@users.sf.net
+# Copyright: This module has been placed in the public domain.
+
+"""
+man.py
+======
+
+This module provides a simple command line interface that uses the
+man page writer to output from ReStructuredText source.
+"""
+
+import locale
+try:
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline, default_description
+from docutils.writers import manpage
+
+description = ("Generates plain unix manual documents.  " + default_description)
+
+publish_cmdline(writer=manpage.Writer(), description=description)
diff --git a/website/bin/rst2odt.py b/website/bin/rst2odt.py
new file mode 100644
index 0000000000000000000000000000000000000000..dd3a652a24603ec29032c6a74cac4be4b341df7f
--- /dev/null
+++ b/website/bin/rst2odt.py
@@ -0,0 +1,30 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rst2odt.py 5839 2009-01-07 19:09:28Z dkuhlman $
+# Author: Dave Kuhlman <dkuhlman@rexx.com>
+# Copyright: This module has been placed in the public domain.
+
+"""
+A front end to the Docutils Publisher, producing OpenOffice documents.
+"""
+
+import sys
+try:
+    import locale
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline_to_binary, default_description
+from docutils.writers.odf_odt import Writer, Reader
+
+
+description = ('Generates OpenDocument/OpenOffice/ODF documents from '
+               'standalone reStructuredText sources.  ' + default_description)
+
+
+writer = Writer()
+reader = Reader()
+output = publish_cmdline_to_binary(reader=reader, writer=writer,
+    description=description)
+
diff --git a/website/bin/rst2odt_prepstyles.py b/website/bin/rst2odt_prepstyles.py
new file mode 100644
index 0000000000000000000000000000000000000000..c01c95db88920f841c1ee2fe61f6e58726ae42df
--- /dev/null
+++ b/website/bin/rst2odt_prepstyles.py
@@ -0,0 +1,67 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rst2odt_prepstyles.py 5839 2009-01-07 19:09:28Z dkuhlman $
+# Author: Dave Kuhlman <dkuhlman@rexx.com>
+# Copyright: This module has been placed in the public domain.
+
+"""
+Fix a word-processor-generated styles.odt for odtwriter use: Drop page size
+specifications from styles.xml in STYLE_FILE.odt.
+"""
+
+#
+# Author: Michael Schutte <michi@uiae.at>
+
+from lxml import etree
+import sys
+import zipfile
+from tempfile import mkstemp
+import shutil
+import os
+
+NAMESPACES = {
+    "style": "urn:oasis:names:tc:opendocument:xmlns:style:1.0",
+    "fo": "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
+}
+
+def prepstyle(filename):
+    
+    zin = zipfile.ZipFile(filename)
+    styles = zin.read("styles.xml")
+    
+    root = etree.fromstring(styles)
+    for el in root.xpath("//style:page-layout-properties", 
+        namespaces=NAMESPACES):
+        for attr in el.attrib:
+            if attr.startswith("{%s}" % NAMESPACES["fo"]):
+                del el.attrib[attr]
+    
+    tempname = mkstemp()
+    zout = zipfile.ZipFile(os.fdopen(tempname[0], "w"), "w",
+        zipfile.ZIP_DEFLATED)
+    
+    for item in zin.infolist():
+        if item.filename == "styles.xml":
+            zout.writestr(item, etree.tostring(root))
+        else:
+            zout.writestr(item, zin.read(item.filename))
+    
+    zout.close()
+    zin.close()
+    shutil.move(tempname[1], filename)
+
+
+def main():
+    args = sys.argv[1:]
+    if len(args) != 1:
+        print >> sys.stderr, __doc__
+        print >> sys.stderr, "Usage: %s STYLE_FILE.odt\n" % sys.argv[0]
+        sys.exit(1)
+    filename = args[0]
+    prepstyle(filename)
+
+if __name__ == '__main__':
+    main()
+
+
+# vim:tw=78:sw=4:sts=4:et:
diff --git a/website/bin/rst2pseudoxml.py b/website/bin/rst2pseudoxml.py
new file mode 100644
index 0000000000000000000000000000000000000000..2aa449f5e8dfa2809eb083e7832c2e0c31c614d6
--- /dev/null
+++ b/website/bin/rst2pseudoxml.py
@@ -0,0 +1,23 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rst2pseudoxml.py 4564 2006-05-21 20:44:42Z wiemann $
+# Author: David Goodger <goodger@python.org>
+# Copyright: This module has been placed in the public domain.
+
+"""
+A minimal front end to the Docutils Publisher, producing pseudo-XML.
+"""
+
+try:
+    import locale
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline, default_description
+
+
+description = ('Generates pseudo-XML from standalone reStructuredText '
+               'sources (for testing purposes).  ' + default_description)
+
+publish_cmdline(description=description)
diff --git a/website/bin/rst2s5.py b/website/bin/rst2s5.py
new file mode 100644
index 0000000000000000000000000000000000000000..14d8465c4f35b1240adbe7178e687d76984b37d0
--- /dev/null
+++ b/website/bin/rst2s5.py
@@ -0,0 +1,24 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rst2s5.py 4564 2006-05-21 20:44:42Z wiemann $
+# Author: Chris Liechti <cliechti@gmx.net>
+# Copyright: This module has been placed in the public domain.
+
+"""
+A minimal front end to the Docutils Publisher, producing HTML slides using
+the S5 template system.
+"""
+
+try:
+    import locale
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline, default_description
+
+
+description = ('Generates S5 (X)HTML slideshow documents from standalone '
+               'reStructuredText sources.  ' + default_description)
+
+publish_cmdline(writer_name='s5', description=description)
diff --git a/website/bin/rst2xetex.py b/website/bin/rst2xetex.py
new file mode 100644
index 0000000000000000000000000000000000000000..f4d497540002f9cca81022eb055b2ec5accd3340
--- /dev/null
+++ b/website/bin/rst2xetex.py
@@ -0,0 +1,26 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rst2xetex.py 7038 2011-05-19 09:12:02Z milde $
+# Author: Guenter Milde
+# Copyright: This module has been placed in the public domain.
+
+"""
+A minimal front end to the Docutils Publisher, producing XeLaTeX source code.
+"""
+
+try:
+    import locale
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline
+
+description = ('Generates XeLaTeX documents from standalone reStructuredText '
+               'sources. '
+               'Reads from <source> (default is stdin) and writes to '
+               '<destination> (default is stdout).  See '
+               '<http://docutils.sourceforge.net/docs/user/latex.html> for '
+               'the full reference.')
+
+publish_cmdline(writer_name='xetex', description=description)
diff --git a/website/bin/rst2xml.py b/website/bin/rst2xml.py
new file mode 100644
index 0000000000000000000000000000000000000000..36e1033d2b4cbf16de738e8218dbb25ab0096fdb
--- /dev/null
+++ b/website/bin/rst2xml.py
@@ -0,0 +1,23 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rst2xml.py 4564 2006-05-21 20:44:42Z wiemann $
+# Author: David Goodger <goodger@python.org>
+# Copyright: This module has been placed in the public domain.
+
+"""
+A minimal front end to the Docutils Publisher, producing Docutils XML.
+"""
+
+try:
+    import locale
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline, default_description
+
+
+description = ('Generates Docutils-native XML from standalone '
+               'reStructuredText sources.  ' + default_description)
+
+publish_cmdline(writer_name='xml', description=description)
diff --git a/website/bin/rstpep2html.py b/website/bin/rstpep2html.py
new file mode 100644
index 0000000000000000000000000000000000000000..0d8875066d347e4f7ee9f70da588c7a326364731
--- /dev/null
+++ b/website/bin/rstpep2html.py
@@ -0,0 +1,25 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+
+# $Id: rstpep2html.py 4564 2006-05-21 20:44:42Z wiemann $
+# Author: David Goodger <goodger@python.org>
+# Copyright: This module has been placed in the public domain.
+
+"""
+A minimal front end to the Docutils Publisher, producing HTML from PEP
+(Python Enhancement Proposal) documents.
+"""
+
+try:
+    import locale
+    locale.setlocale(locale.LC_ALL, '')
+except:
+    pass
+
+from docutils.core import publish_cmdline, default_description
+
+
+description = ('Generates (X)HTML from reStructuredText-format PEP files.  '
+               + default_description)
+
+publish_cmdline(reader_name='pep', writer_name='pep_html',
+                description=description)
diff --git a/website/bin/unidecode b/website/bin/unidecode
new file mode 100644
index 0000000000000000000000000000000000000000..45c8ac04991b006bc3bd7afbc12450f5a5fe1fb7
--- /dev/null
+++ b/website/bin/unidecode
@@ -0,0 +1,10 @@
+#!/home/bbartels/Education/Semester11/ee491/project/website/bin/python
+# EASY-INSTALL-ENTRY-SCRIPT: 'Unidecode==0.4.19','console_scripts','unidecode'
+__requires__ = 'Unidecode==0.4.19'
+import sys
+from pkg_resources import load_entry_point
+
+if __name__ == '__main__':
+    sys.exit(
+        load_entry_point('Unidecode==0.4.19', 'console_scripts', 'unidecode')()
+    )
diff --git a/website/files/weeklyReports/.gitkeep b/website/content/css/main.css
similarity index 100%
rename from website/files/weeklyReports/.gitkeep
rename to website/content/css/main.css
diff --git a/website/files/DesignDocument1.docx.pdf b/website/content/files/DesignDocument1.docx.pdf
similarity index 100%
rename from website/files/DesignDocument1.docx.pdf
rename to website/content/files/DesignDocument1.docx.pdf
diff --git a/website/files/ProjectPlan1Template.docx.pdf b/website/content/files/ProjectPlan1Template.docx.pdf
similarity index 100%
rename from website/files/ProjectPlan1Template.docx.pdf
rename to website/content/files/ProjectPlan1Template.docx.pdf
diff --git a/website/content/files/weeklyReports/.gitkeep b/website/content/files/weeklyReports/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/website/files/weeklyReports/may1716_microCART_report1.pdf b/website/content/files/weeklyReports/may1716_microCART_report1.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report1.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report1.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report10.pdf b/website/content/files/weeklyReports/may1716_microCART_report10.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report10.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report10.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report2.pdf b/website/content/files/weeklyReports/may1716_microCART_report2.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report2.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report2.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report3.pdf b/website/content/files/weeklyReports/may1716_microCART_report3.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report3.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report3.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report4.pdf b/website/content/files/weeklyReports/may1716_microCART_report4.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report4.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report4.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report5.pdf b/website/content/files/weeklyReports/may1716_microCART_report5.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report5.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report5.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report6.pdf b/website/content/files/weeklyReports/may1716_microCART_report6.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report6.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report6.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report7.pdf b/website/content/files/weeklyReports/may1716_microCART_report7.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report7.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report7.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report8.pdf b/website/content/files/weeklyReports/may1716_microCART_report8.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report8.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report8.pdf
diff --git a/website/files/weeklyReports/may1716_microCART_report9.pdf b/website/content/files/weeklyReports/may1716_microCART_report9.pdf
similarity index 100%
rename from website/files/weeklyReports/may1716_microCART_report9.pdf
rename to website/content/files/weeklyReports/may1716_microCART_report9.pdf
diff --git a/website/images/pid_diagram.png b/website/content/images/pid_diagram.png
similarity index 100%
rename from website/images/pid_diagram.png
rename to website/content/images/pid_diagram.png
diff --git a/website/content/images/quad_pic.png b/website/content/images/quad_pic.png
new file mode 100644
index 0000000000000000000000000000000000000000..afcefab8b62e6a5cb95fd12ca4b02971e4f4a210
Binary files /dev/null and b/website/content/images/quad_pic.png differ
diff --git a/website/images/zyboBoard.png b/website/content/images/zyboBoard.png
similarity index 100%
rename from website/images/zyboBoard.png
rename to website/content/images/zyboBoard.png
diff --git a/website/documents.md b/website/content/pages/documents.md
similarity index 73%
rename from website/documents.md
rename to website/content/pages/documents.md
index d527c54c2d2c7cd4ac8dee3c4fa323ba23aa1ad5..35793ee55200a78d5052a866edbf76f565b11b65 100644
--- a/website/documents.md
+++ b/website/content/pages/documents.md
@@ -1,12 +1,8 @@
----
-layout: default
-permalink: documents
----
+Title: Documents
+date: 2016-11-21
 
-# Documents
+[Project Plan 1](files/ProjectPlan1Template.docx.pdf)
 
 [Design Document 1](files/DesignDocument1.docx.pdf)
 
-[Project Plan 1](files/ProjectPlan1Template.docx.pdf)
-
 [Weekly Report 1](files/may1716_microCART_report1.pdf)
\ No newline at end of file
diff --git a/website/index.md b/website/content/pages/home.md
similarity index 76%
rename from website/index.md
rename to website/content/pages/home.md
index 9643e114be8aa1e1170f35b4307cffb651f1c2fd..2ae447635a24cb679d1bd4f7b46f3998e39141cb 100644
--- a/website/index.md
+++ b/website/content/pages/home.md
@@ -1,12 +1,13 @@
----
-layout: default
----
-# MicroCART
-## Microcontroller Controlled Aerial Robot Team
+Title: MicroCART
+url:
+save_as: index.html
+date: 2016-11-19
+
+## Microprocessor Controlled Aerial Robot Team
 
 **Senior Design Group**: may1716
 
-<img align="right" src="images/quad_pic.jpg" width="40%">
+<img align="right" src="images/quad_pic.png" width="40%">
 
 MicroCART is an ongoing senior design project focused on the
 development of a quadcopter as a research platform for controls and
diff --git a/website/members.md b/website/content/pages/members.md
similarity index 95%
rename from website/members.md
rename to website/content/pages/members.md
index 83e528be174d77505701afb6bfc60d32440a7c0c..e6eb785829d3b3ea4be17aa167568c30153b8d8d 100644
--- a/website/members.md
+++ b/website/content/pages/members.md
@@ -1,7 +1,5 @@
----
-layout: default
----
-# Members
+Title: Team Members
+date: 2016-11-20
 
 ## David Wehr
 **Team Leader**  
diff --git a/website/controls.md b/website/controls.md
deleted file mode 100644
index d630bbff780df769d255e49602dba95ecdae3784..0000000000000000000000000000000000000000
--- a/website/controls.md
+++ /dev/null
@@ -1,25 +0,0 @@
----
-layout: default
----
-# Controls
-
-The quadcopter is stabilized with on-board PID controllers. These controllers
-use pitch, roll, and yaw data from on-board sensors and positional data from the
-infrared tracking system to determine appropriate actuator signals necessary
-to keep the quadcopter stable during flight.
-
-The classical PID controller is characterized by 3 coefficients that specify
-how the controller functions. A PID controller can be configured through
-iterative determination of the PID coefficients, but we expect to obtain a more
-accurate control system by first developing a robust mathematical model of the
-quadcopter system. Once we establish this model, we can use numerical
-characteristics of the quadcopter to calculate the appropriate PID coefficients
-for our controllers.
-
-The model we are developing follows the methods developed by our advising
-graduate student Matt Rich in his thesis [Model development, system
-identification, and control of a quadrotor helicopter][1].
-
-<img src="images/pid_diagram.png" width="700">
-
-[1]: http://lib.dr.iastate.edu/etd/12770/
\ No newline at end of file
diff --git a/website/css/main.scss b/website/css/main.scss
deleted file mode 100644
index f1ff7362d211e601ca53f63ed2bed2cc9878e21b..0000000000000000000000000000000000000000
--- a/website/css/main.scss
+++ /dev/null
@@ -1,38 +0,0 @@
----
-# Only the main Sass file needs front matter (the dashes are enough)
----
-@charset "utf-8";
-
-
-
-// Our variables
-$spacing-unit:     10px;
-$image-size:       50px;
-$icon-size:        15px;
-
-
-// Sizes
-$on-palm:          768px;
-
-
-
-// Use media queries like this:
-// @include media-query($on-palm) {
-//     .wrapper {
-//         padding-right: $spacing-unit / 2;
-//         padding-left: $spacing-unit / 2;
-//     }
-// }
-@mixin media-query($device) {
-    @media screen and (max-width: $device) {
-        @content;
-    }
-}
-
-
-
-// Import partials from `sass_dir` (defaults to `_sass`)
-@import
-        "styles",
-        "highlight"
-;
diff --git a/website/deploy b/website/deploy
deleted file mode 100644
index a15fa0e47389c94b383c42fb3f8d582e5ae5e850..0000000000000000000000000000000000000000
--- a/website/deploy
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-
-HOST=may1716.sd.ece.iastate.edu
-USERNAME=may1716
-[ -e PASSWORD ] || echo "ERROR: File PASSWORD is missing.
-Create a file called PASSWORD, and put the sftp password in that file.
-No spaces. No newlines."
-[ -e PASSWORD ] || exit 1
-PASSWORD=$(cat PASSWORD)
-
-cd _site || exit 1
-
-lftp<<END_SCRIPT
-open sftp://$HOST
-user $USERNAME $PASSWORD
-cd www
-mirror -R
-exit
-END_SCRIPT
-
-echo "Website updated."
\ No newline at end of file
diff --git a/website/docs.md b/website/docs.md
deleted file mode 100644
index 5f2747bf27350ea8bc2bcd60f665adeb450adc83..0000000000000000000000000000000000000000
--- a/website/docs.md
+++ /dev/null
@@ -1,27 +0,0 @@
----
-layout: default
-permalink: docs
----
-
-# Docs
-
-## Configuration
-
-This theme can be configured by modifying the `_config.yml` file.
-
-### Theme settings
-
-This theme supports three different mode provided by `hack.css`:
-
-- `standard`
-- `markdown`
-- `dark`
-
-Set `theme_mode` to the desired value.
-
-### Available customizations
-
-- `your_name` and `email` strings to display them in different places on site
-- `navigation` is an array of `text` and `url` pairs to render the menu
-- `projects` is a setting that contains data for the `examples` page, every item must contain `name` and `link`, `image` and `description` are optional
-- `social` contains an array of three required params: `service` is used to include a service icon by the {% raw %}`{% include icon-{{ service }}.html %}`{% endraw %} command, `username` and `link` are quite obvious
diff --git a/website/feed.xml b/website/feed.xml
deleted file mode 100644
index a6628bd842af95a7f423155dd95510941d3a78dc..0000000000000000000000000000000000000000
--- a/website/feed.xml
+++ /dev/null
@@ -1,30 +0,0 @@
----
-layout: null
----
-<?xml version="1.0" encoding="UTF-8"?>
-<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
-  <channel>
-    <title>{{ site.title | xml_escape }}</title>
-    <description>{{ site.description | xml_escape }}</description>
-    <link>{{ site.url }}{{ site.baseurl }}/</link>
-    <atom:link href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}" rel="self" type="application/rss+xml"/>
-    <pubDate>{{ site.time | date_to_rfc822 }}</pubDate>
-    <lastBuildDate>{{ site.time | date_to_rfc822 }}</lastBuildDate>
-    <generator>Jekyll v{{ jekyll.version }}</generator>
-    {% for post in site.posts limit:10 %}
-      <item>
-        <title>{{ post.title | xml_escape }}</title>
-        <description>{{ post.content | xml_escape }}</description>
-        <pubDate>{{ post.date | date_to_rfc822 }}</pubDate>
-        <link>{{ post.url | prepend: site.baseurl | prepend: site.url }}</link>
-        <guid isPermaLink="true">{{ post.url | prepend: site.baseurl | prepend: site.url }}</guid>
-        {% for tag in post.tags %}
-        <category>{{ tag | xml_escape }}</category>
-        {% endfor %}
-        {% for cat in post.categories %}
-        <category>{{ cat | xml_escape }}</category>
-        {% endfor %}
-      </item>
-    {% endfor %}
-  </channel>
-</rss>
diff --git a/website/ground.md b/website/ground.md
deleted file mode 100644
index cc11f8034ed162e566f6f9625d62cc662531e8d2..0000000000000000000000000000000000000000
--- a/website/ground.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-layout: default
----
-
-# Ground Station
-
-TODO
\ No newline at end of file
diff --git a/website/images/dark.png b/website/images/dark.png
deleted file mode 100644
index 99ef97e5750811102fdf4fea1ec3417d16c715a7..0000000000000000000000000000000000000000
Binary files a/website/images/dark.png and /dev/null differ
diff --git a/website/images/markdown.png b/website/images/markdown.png
deleted file mode 100644
index 1b34d946cd1fb95e6f12303c3d2aad8fb9e8373e..0000000000000000000000000000000000000000
Binary files a/website/images/markdown.png and /dev/null differ
diff --git a/website/images/quad_pic.jpg b/website/images/quad_pic.jpg
deleted file mode 100644
index b4bebf6518dd05ba62ba455a2411cab5f8653208..0000000000000000000000000000000000000000
Binary files a/website/images/quad_pic.jpg and /dev/null differ
diff --git a/website/images/standard.png b/website/images/standard.png
deleted file mode 100644
index 43215f06f205e204f2f9ee6d54082b2b1ab19c70..0000000000000000000000000000000000000000
Binary files a/website/images/standard.png and /dev/null differ
diff --git a/website/images/zybo_pic.jpg b/website/images/zybo_pic.jpg
deleted file mode 100644
index 6fe7c1565f4397c1a445d2b057ef7b0fa895a253..0000000000000000000000000000000000000000
Binary files a/website/images/zybo_pic.jpg and /dev/null differ
diff --git a/website/include/python2.7 b/website/include/python2.7
new file mode 120000
index 0000000000000000000000000000000000000000..456dd27f8e9837f40e702305807add6d07b4bc42
--- /dev/null
+++ b/website/include/python2.7
@@ -0,0 +1 @@
+/remote/python/2.7.9/include/python2.7
\ No newline at end of file
diff --git a/website/lib/python2.7/UserDict.py b/website/lib/python2.7/UserDict.py
new file mode 120000
index 0000000000000000000000000000000000000000..ef12fa3e15a9e24c2816a7d2bfde7057add19cd1
--- /dev/null
+++ b/website/lib/python2.7/UserDict.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/UserDict.py
\ No newline at end of file
diff --git a/website/lib/python2.7/_abcoll.py b/website/lib/python2.7/_abcoll.py
new file mode 120000
index 0000000000000000000000000000000000000000..aca905c7b9bdebc62bb44f531604f0688eca3dd6
--- /dev/null
+++ b/website/lib/python2.7/_abcoll.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/_abcoll.py
\ No newline at end of file
diff --git a/website/lib/python2.7/_weakrefset.py b/website/lib/python2.7/_weakrefset.py
new file mode 120000
index 0000000000000000000000000000000000000000..c158ffe9f500f859e63aa5aeb2828c86ad515ce6
--- /dev/null
+++ b/website/lib/python2.7/_weakrefset.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/_weakrefset.py
\ No newline at end of file
diff --git a/website/lib/python2.7/abc.py b/website/lib/python2.7/abc.py
new file mode 120000
index 0000000000000000000000000000000000000000..b08da25e1f07ec1cf6f5dec1548d6cc496aae6ad
--- /dev/null
+++ b/website/lib/python2.7/abc.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/abc.py
\ No newline at end of file
diff --git a/website/lib/python2.7/codecs.py b/website/lib/python2.7/codecs.py
new file mode 120000
index 0000000000000000000000000000000000000000..b9b83b4b216ba7fcfea853dcebdf10c197bb8731
--- /dev/null
+++ b/website/lib/python2.7/codecs.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/codecs.py
\ No newline at end of file
diff --git a/website/lib/python2.7/config b/website/lib/python2.7/config
new file mode 120000
index 0000000000000000000000000000000000000000..534aa1a4a0c16d2e176c25aa07405e700d23cbd8
--- /dev/null
+++ b/website/lib/python2.7/config
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/config
\ No newline at end of file
diff --git a/website/lib/python2.7/copy_reg.py b/website/lib/python2.7/copy_reg.py
new file mode 120000
index 0000000000000000000000000000000000000000..2e2aa22d6df1840402756e1022d552108e4b9fec
--- /dev/null
+++ b/website/lib/python2.7/copy_reg.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/copy_reg.py
\ No newline at end of file
diff --git a/website/lib/python2.7/distutils/__init__.py b/website/lib/python2.7/distutils/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..29fc1da45900ece22ff3ebb73a6b7ccf607e6a1a
--- /dev/null
+++ b/website/lib/python2.7/distutils/__init__.py
@@ -0,0 +1,101 @@
+import os
+import sys
+import warnings 
+import imp
+import opcode # opcode is not a virtualenv module, so we can use it to find the stdlib
+              # Important! To work on pypy, this must be a module that resides in the
+              # lib-python/modified-x.y.z directory
+
+dirname = os.path.dirname
+
+distutils_path = os.path.join(os.path.dirname(opcode.__file__), 'distutils')
+if os.path.normpath(distutils_path) == os.path.dirname(os.path.normpath(__file__)):
+    warnings.warn(
+        "The virtualenv distutils package at %s appears to be in the same location as the system distutils?")
+else:
+    __path__.insert(0, distutils_path)
+    real_distutils = imp.load_module("_virtualenv_distutils", None, distutils_path, ('', '', imp.PKG_DIRECTORY))
+    # Copy the relevant attributes
+    try:
+        __revision__ = real_distutils.__revision__
+    except AttributeError:
+        pass
+    __version__ = real_distutils.__version__
+
+from distutils import dist, sysconfig
+
+try:
+    basestring
+except NameError:
+    basestring = str
+
+## patch build_ext (distutils doesn't know how to get the libs directory
+## path on windows - it hardcodes the paths around the patched sys.prefix)
+
+if sys.platform == 'win32':
+    from distutils.command.build_ext import build_ext as old_build_ext
+    class build_ext(old_build_ext):
+        def finalize_options (self):
+            if self.library_dirs is None:
+                self.library_dirs = []
+            elif isinstance(self.library_dirs, basestring):
+                self.library_dirs = self.library_dirs.split(os.pathsep)
+            
+            self.library_dirs.insert(0, os.path.join(sys.real_prefix, "Libs"))
+            old_build_ext.finalize_options(self)
+            
+    from distutils.command import build_ext as build_ext_module 
+    build_ext_module.build_ext = build_ext
+
+## distutils.dist patches:
+
+old_find_config_files = dist.Distribution.find_config_files
+def find_config_files(self):
+    found = old_find_config_files(self)
+    system_distutils = os.path.join(distutils_path, 'distutils.cfg')
+    #if os.path.exists(system_distutils):
+    #    found.insert(0, system_distutils)
+        # What to call the per-user config file
+    if os.name == 'posix':
+        user_filename = ".pydistutils.cfg"
+    else:
+        user_filename = "pydistutils.cfg"
+    user_filename = os.path.join(sys.prefix, user_filename)
+    if os.path.isfile(user_filename):
+        for item in list(found):
+            if item.endswith('pydistutils.cfg'):
+                found.remove(item)
+        found.append(user_filename)
+    return found
+dist.Distribution.find_config_files = find_config_files
+
+## distutils.sysconfig patches:
+
+old_get_python_inc = sysconfig.get_python_inc
+def sysconfig_get_python_inc(plat_specific=0, prefix=None):
+    if prefix is None:
+        prefix = sys.real_prefix
+    return old_get_python_inc(plat_specific, prefix)
+sysconfig_get_python_inc.__doc__ = old_get_python_inc.__doc__
+sysconfig.get_python_inc = sysconfig_get_python_inc
+
+old_get_python_lib = sysconfig.get_python_lib
+def sysconfig_get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
+    if standard_lib and prefix is None:
+        prefix = sys.real_prefix
+    return old_get_python_lib(plat_specific, standard_lib, prefix)
+sysconfig_get_python_lib.__doc__ = old_get_python_lib.__doc__
+sysconfig.get_python_lib = sysconfig_get_python_lib
+
+old_get_config_vars = sysconfig.get_config_vars
+def sysconfig_get_config_vars(*args):
+    real_vars = old_get_config_vars(*args)
+    if sys.platform == 'win32':
+        lib_dir = os.path.join(sys.real_prefix, "libs")
+        if isinstance(real_vars, dict) and 'LIBDIR' not in real_vars:
+            real_vars['LIBDIR'] = lib_dir # asked for all
+        elif isinstance(real_vars, list) and 'LIBDIR' in args:
+            real_vars = real_vars + [lib_dir] # asked for list
+    return real_vars
+sysconfig_get_config_vars.__doc__ = old_get_config_vars.__doc__
+sysconfig.get_config_vars = sysconfig_get_config_vars
diff --git a/website/lib/python2.7/distutils/distutils.cfg b/website/lib/python2.7/distutils/distutils.cfg
new file mode 100644
index 0000000000000000000000000000000000000000..1af230ec911a5d31aa8c4bed50bff2e8e1af8512
--- /dev/null
+++ b/website/lib/python2.7/distutils/distutils.cfg
@@ -0,0 +1,6 @@
+# This is a config file local to this virtualenv installation
+# You may include options that will be used by all distutils commands,
+# and by easy_install.  For instance:
+#
+#   [easy_install]
+#   find_links = http://mylocalsite
diff --git a/website/lib/python2.7/encodings b/website/lib/python2.7/encodings
new file mode 120000
index 0000000000000000000000000000000000000000..a81faacb4816e8eb44ae3e0f34523c71c3f5dea2
--- /dev/null
+++ b/website/lib/python2.7/encodings
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/encodings
\ No newline at end of file
diff --git a/website/lib/python2.7/fnmatch.py b/website/lib/python2.7/fnmatch.py
new file mode 120000
index 0000000000000000000000000000000000000000..db75334489e1698b7fab3e807cd83e5df4801569
--- /dev/null
+++ b/website/lib/python2.7/fnmatch.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/fnmatch.py
\ No newline at end of file
diff --git a/website/lib/python2.7/genericpath.py b/website/lib/python2.7/genericpath.py
new file mode 120000
index 0000000000000000000000000000000000000000..c41eada91021e7c2ec08caa4d1c52a06f5e10a97
--- /dev/null
+++ b/website/lib/python2.7/genericpath.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/genericpath.py
\ No newline at end of file
diff --git a/website/lib/python2.7/lib-dynload b/website/lib/python2.7/lib-dynload
new file mode 120000
index 0000000000000000000000000000000000000000..946377799a4353b7ae39bad22d759e7f04ba8471
--- /dev/null
+++ b/website/lib/python2.7/lib-dynload
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/lib-dynload
\ No newline at end of file
diff --git a/website/lib/python2.7/linecache.py b/website/lib/python2.7/linecache.py
new file mode 120000
index 0000000000000000000000000000000000000000..c149e7c0dce375768e6d47a2ab68750799ada21c
--- /dev/null
+++ b/website/lib/python2.7/linecache.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/linecache.py
\ No newline at end of file
diff --git a/website/lib/python2.7/locale.py b/website/lib/python2.7/locale.py
new file mode 120000
index 0000000000000000000000000000000000000000..1fcb26f1650f8bd84218386d7425868b2e4bbe1c
--- /dev/null
+++ b/website/lib/python2.7/locale.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/locale.py
\ No newline at end of file
diff --git a/website/lib/python2.7/no-global-site-packages.txt b/website/lib/python2.7/no-global-site-packages.txt
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/website/lib/python2.7/ntpath.py b/website/lib/python2.7/ntpath.py
new file mode 120000
index 0000000000000000000000000000000000000000..3e6e17175cd9ad7318417511ae8a15dc38bef325
--- /dev/null
+++ b/website/lib/python2.7/ntpath.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/ntpath.py
\ No newline at end of file
diff --git a/website/lib/python2.7/orig-prefix.txt b/website/lib/python2.7/orig-prefix.txt
new file mode 100644
index 0000000000000000000000000000000000000000..51444b3efc68fb037c974f35bc531719e2cb85bd
--- /dev/null
+++ b/website/lib/python2.7/orig-prefix.txt
@@ -0,0 +1 @@
+/remote/python/2.7.9
\ No newline at end of file
diff --git a/website/lib/python2.7/os.py b/website/lib/python2.7/os.py
new file mode 120000
index 0000000000000000000000000000000000000000..e776e05b613fe63d0e20b5f8b427184daacae759
--- /dev/null
+++ b/website/lib/python2.7/os.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/os.py
\ No newline at end of file
diff --git a/website/lib/python2.7/posixpath.py b/website/lib/python2.7/posixpath.py
new file mode 120000
index 0000000000000000000000000000000000000000..1902887f518834749d2649bd856a7f8360281654
--- /dev/null
+++ b/website/lib/python2.7/posixpath.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/posixpath.py
\ No newline at end of file
diff --git a/website/lib/python2.7/re.py b/website/lib/python2.7/re.py
new file mode 120000
index 0000000000000000000000000000000000000000..0bdcbc4fb6cdabeb2b0c8073a778e63985643415
--- /dev/null
+++ b/website/lib/python2.7/re.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/re.py
\ No newline at end of file
diff --git a/website/lib/python2.7/site.py b/website/lib/python2.7/site.py
new file mode 100644
index 0000000000000000000000000000000000000000..7969769c36c0f45053ca59f8db4e910d146e9cdf
--- /dev/null
+++ b/website/lib/python2.7/site.py
@@ -0,0 +1,758 @@
+"""Append module search paths for third-party packages to sys.path.
+
+****************************************************************
+* This module is automatically imported during initialization. *
+****************************************************************
+
+In earlier versions of Python (up to 1.5a3), scripts or modules that
+needed to use site-specific modules would place ``import site''
+somewhere near the top of their code.  Because of the automatic
+import, this is no longer necessary (but code that does it still
+works).
+
+This will append site-specific paths to the module search path.  On
+Unix, it starts with sys.prefix and sys.exec_prefix (if different) and
+appends lib/python<version>/site-packages as well as lib/site-python.
+It also supports the Debian convention of
+lib/python<version>/dist-packages.  On other platforms (mainly Mac and
+Windows), it uses just sys.prefix (and sys.exec_prefix, if different,
+but this is unlikely).  The resulting directories, if they exist, are
+appended to sys.path, and also inspected for path configuration files.
+
+FOR DEBIAN, this sys.path is augmented with directories in /usr/local.
+Local addons go into /usr/local/lib/python<version>/site-packages
+(resp. /usr/local/lib/site-python), Debian addons install into
+/usr/{lib,share}/python<version>/dist-packages.
+
+A path configuration file is a file whose name has the form
+<package>.pth; its contents are additional directories (one per line)
+to be added to sys.path.  Non-existing directories (or
+non-directories) are never added to sys.path; no directory is added to
+sys.path more than once.  Blank lines and lines beginning with
+'#' are skipped. Lines starting with 'import' are executed.
+
+For example, suppose sys.prefix and sys.exec_prefix are set to
+/usr/local and there is a directory /usr/local/lib/python2.X/site-packages
+with three subdirectories, foo, bar and spam, and two path
+configuration files, foo.pth and bar.pth.  Assume foo.pth contains the
+following:
+
+  # foo package configuration
+  foo
+  bar
+  bletch
+
+and bar.pth contains:
+
+  # bar package configuration
+  bar
+
+Then the following directories are added to sys.path, in this order:
+
+  /usr/local/lib/python2.X/site-packages/bar
+  /usr/local/lib/python2.X/site-packages/foo
+
+Note that bletch is omitted because it doesn't exist; bar precedes foo
+because bar.pth comes alphabetically before foo.pth; and spam is
+omitted because it is not mentioned in either path configuration file.
+
+After these path manipulations, an attempt is made to import a module
+named sitecustomize, which can perform arbitrary additional
+site-specific customizations.  If this import fails with an
+ImportError exception, it is silently ignored.
+
+"""
+
+import sys
+import os
+try:
+    import __builtin__ as builtins
+except ImportError:
+    import builtins
+try:
+    set
+except NameError:
+    from sets import Set as set
+
+# Prefixes for site-packages; add additional prefixes like /usr/local here
+PREFIXES = [sys.prefix, sys.exec_prefix]
+# Enable per user site-packages directory
+# set it to False to disable the feature or True to force the feature
+ENABLE_USER_SITE = None
+# for distutils.commands.install
+USER_SITE = None
+USER_BASE = None
+
+_is_64bit = (getattr(sys, 'maxsize', None) or getattr(sys, 'maxint')) > 2**32
+_is_pypy = hasattr(sys, 'pypy_version_info')
+_is_jython = sys.platform[:4] == 'java'
+if _is_jython:
+    ModuleType = type(os)
+
+def makepath(*paths):
+    dir = os.path.join(*paths)
+    if _is_jython and (dir == '__classpath__' or
+                       dir.startswith('__pyclasspath__')):
+        return dir, dir
+    dir = os.path.abspath(dir)
+    return dir, os.path.normcase(dir)
+
+def abs__file__():
+    """Set all module' __file__ attribute to an absolute path"""
+    for m in sys.modules.values():
+        if ((_is_jython and not isinstance(m, ModuleType)) or
+            hasattr(m, '__loader__')):
+            # only modules need the abspath in Jython. and don't mess
+            # with a PEP 302-supplied __file__
+            continue
+        f = getattr(m, '__file__', None)
+        if f is None:
+            continue
+        m.__file__ = os.path.abspath(f)
+
+def removeduppaths():
+    """ Remove duplicate entries from sys.path along with making them
+    absolute"""
+    # This ensures that the initial path provided by the interpreter contains
+    # only absolute pathnames, even if we're running from the build directory.
+    L = []
+    known_paths = set()
+    for dir in sys.path:
+        # Filter out duplicate paths (on case-insensitive file systems also
+        # if they only differ in case); turn relative paths into absolute
+        # paths.
+        dir, dircase = makepath(dir)
+        if not dircase in known_paths:
+            L.append(dir)
+            known_paths.add(dircase)
+    sys.path[:] = L
+    return known_paths
+
+# XXX This should not be part of site.py, since it is needed even when
+# using the -S option for Python.  See http://www.python.org/sf/586680
+def addbuilddir():
+    """Append ./build/lib.<platform> in case we're running in the build dir
+    (especially for Guido :-)"""
+    from distutils.util import get_platform
+    s = "build/lib.%s-%.3s" % (get_platform(), sys.version)
+    if hasattr(sys, 'gettotalrefcount'):
+        s += '-pydebug'
+    s = os.path.join(os.path.dirname(sys.path[-1]), s)
+    sys.path.append(s)
+
+def _init_pathinfo():
+    """Return a set containing all existing directory entries from sys.path"""
+    d = set()
+    for dir in sys.path:
+        try:
+            if os.path.isdir(dir):
+                dir, dircase = makepath(dir)
+                d.add(dircase)
+        except TypeError:
+            continue
+    return d
+
+def addpackage(sitedir, name, known_paths):
+    """Add a new path to known_paths by combining sitedir and 'name' or execute
+    sitedir if it starts with 'import'"""
+    if known_paths is None:
+        _init_pathinfo()
+        reset = 1
+    else:
+        reset = 0
+    fullname = os.path.join(sitedir, name)
+    try:
+        f = open(fullname, "rU")
+    except IOError:
+        return
+    try:
+        for line in f:
+            if line.startswith("#"):
+                continue
+            if line.startswith("import"):
+                exec(line)
+                continue
+            line = line.rstrip()
+            dir, dircase = makepath(sitedir, line)
+            if not dircase in known_paths and os.path.exists(dir):
+                sys.path.append(dir)
+                known_paths.add(dircase)
+    finally:
+        f.close()
+    if reset:
+        known_paths = None
+    return known_paths
+
+def addsitedir(sitedir, known_paths=None):
+    """Add 'sitedir' argument to sys.path if missing and handle .pth files in
+    'sitedir'"""
+    if known_paths is None:
+        known_paths = _init_pathinfo()
+        reset = 1
+    else:
+        reset = 0
+    sitedir, sitedircase = makepath(sitedir)
+    if not sitedircase in known_paths:
+        sys.path.append(sitedir)        # Add path component
+    try:
+        names = os.listdir(sitedir)
+    except os.error:
+        return
+    names.sort()
+    for name in names:
+        if name.endswith(os.extsep + "pth"):
+            addpackage(sitedir, name, known_paths)
+    if reset:
+        known_paths = None
+    return known_paths
+
+def addsitepackages(known_paths, sys_prefix=sys.prefix, exec_prefix=sys.exec_prefix):
+    """Add site-packages (and possibly site-python) to sys.path"""
+    prefixes = [os.path.join(sys_prefix, "local"), sys_prefix]
+    if exec_prefix != sys_prefix:
+        prefixes.append(os.path.join(exec_prefix, "local"))
+
+    for prefix in prefixes:
+        if prefix:
+            if sys.platform in ('os2emx', 'riscos') or _is_jython:
+                sitedirs = [os.path.join(prefix, "Lib", "site-packages")]
+            elif _is_pypy:
+                sitedirs = [os.path.join(prefix, 'site-packages')]
+            elif sys.platform == 'darwin' and prefix == sys_prefix:
+
+                if prefix.startswith("/System/Library/Frameworks/"): # Apple's Python
+
+                    sitedirs = [os.path.join("/Library/Python", sys.version[:3], "site-packages"),
+                                os.path.join(prefix, "Extras", "lib", "python")]
+
+                else: # any other Python distros on OSX work this way
+                    sitedirs = [os.path.join(prefix, "lib",
+                                             "python" + sys.version[:3], "site-packages")]
+
+            elif os.sep == '/':
+                sitedirs = [os.path.join(prefix,
+                                         "lib",
+                                         "python" + sys.version[:3],
+                                         "site-packages"),
+                            os.path.join(prefix, "lib", "site-python"),
+                            os.path.join(prefix, "python" + sys.version[:3], "lib-dynload")]
+                lib64_dir = os.path.join(prefix, "lib64", "python" + sys.version[:3], "site-packages")
+                if (os.path.exists(lib64_dir) and
+                    os.path.realpath(lib64_dir) not in [os.path.realpath(p) for p in sitedirs]):
+                    if _is_64bit:
+                        sitedirs.insert(0, lib64_dir)
+                    else:
+                        sitedirs.append(lib64_dir)
+                try:
+                    # sys.getobjects only available in --with-pydebug build
+                    sys.getobjects
+                    sitedirs.insert(0, os.path.join(sitedirs[0], 'debug'))
+                except AttributeError:
+                    pass
+                # Debian-specific dist-packages directories:
+                sitedirs.append(os.path.join(prefix, "local/lib",
+                                             "python" + sys.version[:3],
+                                             "dist-packages"))
+                if sys.version[0] == '2':
+                    sitedirs.append(os.path.join(prefix, "lib",
+                                                 "python" + sys.version[:3],
+                                                 "dist-packages"))
+                else:
+                    sitedirs.append(os.path.join(prefix, "lib",
+                                                 "python" + sys.version[0],
+                                                 "dist-packages"))
+                sitedirs.append(os.path.join(prefix, "lib", "dist-python"))
+            else:
+                sitedirs = [prefix, os.path.join(prefix, "lib", "site-packages")]
+            if sys.platform == 'darwin':
+                # for framework builds *only* we add the standard Apple
+                # locations. Currently only per-user, but /Library and
+                # /Network/Library could be added too
+                if 'Python.framework' in prefix:
+                    home = os.environ.get('HOME')
+                    if home:
+                        sitedirs.append(
+                            os.path.join(home,
+                                         'Library',
+                                         'Python',
+                                         sys.version[:3],
+                                         'site-packages'))
+            for sitedir in sitedirs:
+                if os.path.isdir(sitedir):
+                    addsitedir(sitedir, known_paths)
+    return None
+
+def check_enableusersite():
+    """Check if user site directory is safe for inclusion
+
+    The function tests for the command line flag (including environment var),
+    process uid/gid equal to effective uid/gid.
+
+    None: Disabled for security reasons
+    False: Disabled by user (command line option)
+    True: Safe and enabled
+    """
+    if hasattr(sys, 'flags') and getattr(sys.flags, 'no_user_site', False):
+        return False
+
+    if hasattr(os, "getuid") and hasattr(os, "geteuid"):
+        # check process uid == effective uid
+        if os.geteuid() != os.getuid():
+            return None
+    if hasattr(os, "getgid") and hasattr(os, "getegid"):
+        # check process gid == effective gid
+        if os.getegid() != os.getgid():
+            return None
+
+    return True
+
+def addusersitepackages(known_paths):
+    """Add a per user site-package to sys.path
+
+    Each user has its own python directory with site-packages in the
+    home directory.
+
+    USER_BASE is the root directory for all Python versions
+
+    USER_SITE is the user specific site-packages directory
+
+    USER_SITE/.. can be used for data.
+    """
+    global USER_BASE, USER_SITE, ENABLE_USER_SITE
+    env_base = os.environ.get("PYTHONUSERBASE", None)
+
+    def joinuser(*args):
+        return os.path.expanduser(os.path.join(*args))
+
+    #if sys.platform in ('os2emx', 'riscos'):
+    #    # Don't know what to put here
+    #    USER_BASE = ''
+    #    USER_SITE = ''
+    if os.name == "nt":
+        base = os.environ.get("APPDATA") or "~"
+        if env_base:
+            USER_BASE = env_base
+        else:
+            USER_BASE = joinuser(base, "Python")
+        USER_SITE = os.path.join(USER_BASE,
+                                 "Python" + sys.version[0] + sys.version[2],
+                                 "site-packages")
+    else:
+        if env_base:
+            USER_BASE = env_base
+        else:
+            USER_BASE = joinuser("~", ".local")
+        USER_SITE = os.path.join(USER_BASE, "lib",
+                                 "python" + sys.version[:3],
+                                 "site-packages")
+
+    if ENABLE_USER_SITE and os.path.isdir(USER_SITE):
+        addsitedir(USER_SITE, known_paths)
+    if ENABLE_USER_SITE:
+        for dist_libdir in ("lib", "local/lib"):
+            user_site = os.path.join(USER_BASE, dist_libdir,
+                                     "python" + sys.version[:3],
+                                     "dist-packages")
+            if os.path.isdir(user_site):
+                addsitedir(user_site, known_paths)
+    return known_paths
+
+
+
+def setBEGINLIBPATH():
+    """The OS/2 EMX port has optional extension modules that do double duty
+    as DLLs (and must use the .DLL file extension) for other extensions.
+    The library search path needs to be amended so these will be found
+    during module import.  Use BEGINLIBPATH so that these are at the start
+    of the library search path.
+
+    """
+    dllpath = os.path.join(sys.prefix, "Lib", "lib-dynload")
+    libpath = os.environ['BEGINLIBPATH'].split(';')
+    if libpath[-1]:
+        libpath.append(dllpath)
+    else:
+        libpath[-1] = dllpath
+    os.environ['BEGINLIBPATH'] = ';'.join(libpath)
+
+
+def setquit():
+    """Define new built-ins 'quit' and 'exit'.
+    These are simply strings that display a hint on how to exit.
+
+    """
+    if os.sep == ':':
+        eof = 'Cmd-Q'
+    elif os.sep == '\\':
+        eof = 'Ctrl-Z plus Return'
+    else:
+        eof = 'Ctrl-D (i.e. EOF)'
+
+    class Quitter(object):
+        def __init__(self, name):
+            self.name = name
+        def __repr__(self):
+            return 'Use %s() or %s to exit' % (self.name, eof)
+        def __call__(self, code=None):
+            # Shells like IDLE catch the SystemExit, but listen when their
+            # stdin wrapper is closed.
+            try:
+                sys.stdin.close()
+            except:
+                pass
+            raise SystemExit(code)
+    builtins.quit = Quitter('quit')
+    builtins.exit = Quitter('exit')
+
+
+class _Printer(object):
+    """interactive prompt objects for printing the license text, a list of
+    contributors and the copyright notice."""
+
+    MAXLINES = 23
+
+    def __init__(self, name, data, files=(), dirs=()):
+        self.__name = name
+        self.__data = data
+        self.__files = files
+        self.__dirs = dirs
+        self.__lines = None
+
+    def __setup(self):
+        if self.__lines:
+            return
+        data = None
+        for dir in self.__dirs:
+            for filename in self.__files:
+                filename = os.path.join(dir, filename)
+                try:
+                    fp = open(filename, "rU")
+                    data = fp.read()
+                    fp.close()
+                    break
+                except IOError:
+                    pass
+            if data:
+                break
+        if not data:
+            data = self.__data
+        self.__lines = data.split('\n')
+        self.__linecnt = len(self.__lines)
+
+    def __repr__(self):
+        self.__setup()
+        if len(self.__lines) <= self.MAXLINES:
+            return "\n".join(self.__lines)
+        else:
+            return "Type %s() to see the full %s text" % ((self.__name,)*2)
+
+    def __call__(self):
+        self.__setup()
+        prompt = 'Hit Return for more, or q (and Return) to quit: '
+        lineno = 0
+        while 1:
+            try:
+                for i in range(lineno, lineno + self.MAXLINES):
+                    print(self.__lines[i])
+            except IndexError:
+                break
+            else:
+                lineno += self.MAXLINES
+                key = None
+                while key is None:
+                    try:
+                        key = raw_input(prompt)
+                    except NameError:
+                        key = input(prompt)
+                    if key not in ('', 'q'):
+                        key = None
+                if key == 'q':
+                    break
+
+def setcopyright():
+    """Set 'copyright' and 'credits' in __builtin__"""
+    builtins.copyright = _Printer("copyright", sys.copyright)
+    if _is_jython:
+        builtins.credits = _Printer(
+            "credits",
+            "Jython is maintained by the Jython developers (www.jython.org).")
+    elif _is_pypy:
+        builtins.credits = _Printer(
+            "credits",
+            "PyPy is maintained by the PyPy developers: http://pypy.org/")
+    else:
+        builtins.credits = _Printer("credits", """\
+    Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands
+    for supporting Python development.  See www.python.org for more information.""")
+    here = os.path.dirname(os.__file__)
+    builtins.license = _Printer(
+        "license", "See http://www.python.org/%.3s/license.html" % sys.version,
+        ["LICENSE.txt", "LICENSE"],
+        [os.path.join(here, os.pardir), here, os.curdir])
+
+
+class _Helper(object):
+    """Define the built-in 'help'.
+    This is a wrapper around pydoc.help (with a twist).
+
+    """
+
+    def __repr__(self):
+        return "Type help() for interactive help, " \
+               "or help(object) for help about object."
+    def __call__(self, *args, **kwds):
+        import pydoc
+        return pydoc.help(*args, **kwds)
+
+def sethelper():
+    builtins.help = _Helper()
+
+def aliasmbcs():
+    """On Windows, some default encodings are not provided by Python,
+    while they are always available as "mbcs" in each locale. Make
+    them usable by aliasing to "mbcs" in such a case."""
+    if sys.platform == 'win32':
+        import locale, codecs
+        enc = locale.getdefaultlocale()[1]
+        if enc.startswith('cp'):            # "cp***" ?
+            try:
+                codecs.lookup(enc)
+            except LookupError:
+                import encodings
+                encodings._cache[enc] = encodings._unknown
+                encodings.aliases.aliases[enc] = 'mbcs'
+
+def setencoding():
+    """Set the string encoding used by the Unicode implementation.  The
+    default is 'ascii', but if you're willing to experiment, you can
+    change this."""
+    encoding = "ascii" # Default value set by _PyUnicode_Init()
+    if 0:
+        # Enable to support locale aware default string encodings.
+        import locale
+        loc = locale.getdefaultlocale()
+        if loc[1]:
+            encoding = loc[1]
+    if 0:
+        # Enable to switch off string to Unicode coercion and implicit
+        # Unicode to string conversion.
+        encoding = "undefined"
+    if encoding != "ascii":
+        # On Non-Unicode builds this will raise an AttributeError...
+        sys.setdefaultencoding(encoding) # Needs Python Unicode build !
+
+
+def execsitecustomize():
+    """Run custom site specific code, if available."""
+    try:
+        import sitecustomize
+    except ImportError:
+        pass
+
+def virtual_install_main_packages():
+    f = open(os.path.join(os.path.dirname(__file__), 'orig-prefix.txt'))
+    sys.real_prefix = f.read().strip()
+    f.close()
+    pos = 2
+    hardcoded_relative_dirs = []
+    if sys.path[0] == '':
+        pos += 1
+    if _is_jython:
+        paths = [os.path.join(sys.real_prefix, 'Lib')]
+    elif _is_pypy:
+        if sys.version_info > (3, 2):
+            cpyver = '%d' % sys.version_info[0]
+        elif sys.pypy_version_info >= (1, 5):
+            cpyver = '%d.%d' % sys.version_info[:2]
+        else:
+            cpyver = '%d.%d.%d' % sys.version_info[:3]
+        paths = [os.path.join(sys.real_prefix, 'lib_pypy'),
+                 os.path.join(sys.real_prefix, 'lib-python', cpyver)]
+        if sys.pypy_version_info < (1, 9):
+            paths.insert(1, os.path.join(sys.real_prefix,
+                                         'lib-python', 'modified-%s' % cpyver))
+        hardcoded_relative_dirs = paths[:] # for the special 'darwin' case below
+        #
+        # This is hardcoded in the Python executable, but relative to sys.prefix:
+        for path in paths[:]:
+            plat_path = os.path.join(path, 'plat-%s' % sys.platform)
+            if os.path.exists(plat_path):
+                paths.append(plat_path)
+    elif sys.platform == 'win32':
+        paths = [os.path.join(sys.real_prefix, 'Lib'), os.path.join(sys.real_prefix, 'DLLs')]
+    else:
+        paths = [os.path.join(sys.real_prefix, 'lib', 'python'+sys.version[:3])]
+        hardcoded_relative_dirs = paths[:] # for the special 'darwin' case below
+        lib64_path = os.path.join(sys.real_prefix, 'lib64', 'python'+sys.version[:3])
+        if os.path.exists(lib64_path):
+            if _is_64bit:
+                paths.insert(0, lib64_path)
+            else:
+                paths.append(lib64_path)
+        # This is hardcoded in the Python executable, but relative to
+        # sys.prefix.  Debian change: we need to add the multiarch triplet
+        # here, which is where the real stuff lives.  As per PEP 421, in
+        # Python 3.3+, this lives in sys.implementation, while in Python 2.7
+        # it lives in sys.
+        try:
+            arch = getattr(sys, 'implementation', sys)._multiarch
+        except AttributeError:
+            # This is a non-multiarch aware Python.  Fallback to the old way.
+            arch = sys.platform
+        plat_path = os.path.join(sys.real_prefix, 'lib',
+                                 'python'+sys.version[:3],
+                                 'plat-%s' % arch)
+        if os.path.exists(plat_path):
+            paths.append(plat_path)
+    # This is hardcoded in the Python executable, but
+    # relative to sys.prefix, so we have to fix up:
+    for path in list(paths):
+        tk_dir = os.path.join(path, 'lib-tk')
+        if os.path.exists(tk_dir):
+            paths.append(tk_dir)
+
+    # These are hardcoded in the Apple's Python executable,
+    # but relative to sys.prefix, so we have to fix them up:
+    if sys.platform == 'darwin':
+        hardcoded_paths = [os.path.join(relative_dir, module)
+                           for relative_dir in hardcoded_relative_dirs
+                           for module in ('plat-darwin', 'plat-mac', 'plat-mac/lib-scriptpackages')]
+
+        for path in hardcoded_paths:
+            if os.path.exists(path):
+                paths.append(path)
+
+    sys.path.extend(paths)
+
+def force_global_eggs_after_local_site_packages():
+    """
+    Force easy_installed eggs in the global environment to get placed
+    in sys.path after all packages inside the virtualenv.  This
+    maintains the "least surprise" result that packages in the
+    virtualenv always mask global packages, never the other way
+    around.
+
+    """
+    egginsert = getattr(sys, '__egginsert', 0)
+    for i, path in enumerate(sys.path):
+        if i > egginsert and path.startswith(sys.prefix):
+            egginsert = i
+    sys.__egginsert = egginsert + 1
+
+def virtual_addsitepackages(known_paths):
+    force_global_eggs_after_local_site_packages()
+    return addsitepackages(known_paths, sys_prefix=sys.real_prefix)
+
+def fixclasspath():
+    """Adjust the special classpath sys.path entries for Jython. These
+    entries should follow the base virtualenv lib directories.
+    """
+    paths = []
+    classpaths = []
+    for path in sys.path:
+        if path == '__classpath__' or path.startswith('__pyclasspath__'):
+            classpaths.append(path)
+        else:
+            paths.append(path)
+    sys.path = paths
+    sys.path.extend(classpaths)
+
+def execusercustomize():
+    """Run custom user specific code, if available."""
+    try:
+        import usercustomize
+    except ImportError:
+        pass
+
+
+def main():
+    global ENABLE_USER_SITE
+    virtual_install_main_packages()
+    abs__file__()
+    paths_in_sys = removeduppaths()
+    if (os.name == "posix" and sys.path and
+        os.path.basename(sys.path[-1]) == "Modules"):
+        addbuilddir()
+    if _is_jython:
+        fixclasspath()
+    GLOBAL_SITE_PACKAGES = not os.path.exists(os.path.join(os.path.dirname(__file__), 'no-global-site-packages.txt'))
+    if not GLOBAL_SITE_PACKAGES:
+        ENABLE_USER_SITE = False
+    if ENABLE_USER_SITE is None:
+        ENABLE_USER_SITE = check_enableusersite()
+    paths_in_sys = addsitepackages(paths_in_sys)
+    paths_in_sys = addusersitepackages(paths_in_sys)
+    if GLOBAL_SITE_PACKAGES:
+        paths_in_sys = virtual_addsitepackages(paths_in_sys)
+    if sys.platform == 'os2emx':
+        setBEGINLIBPATH()
+    setquit()
+    setcopyright()
+    sethelper()
+    aliasmbcs()
+    setencoding()
+    execsitecustomize()
+    if ENABLE_USER_SITE:
+        execusercustomize()
+    # Remove sys.setdefaultencoding() so that users cannot change the
+    # encoding after initialization.  The test for presence is needed when
+    # this module is run as a script, because this code is executed twice.
+    if hasattr(sys, "setdefaultencoding"):
+        del sys.setdefaultencoding
+
+main()
+
+def _script():
+    help = """\
+    %s [--user-base] [--user-site]
+
+    Without arguments print some useful information
+    With arguments print the value of USER_BASE and/or USER_SITE separated
+    by '%s'.
+
+    Exit codes with --user-base or --user-site:
+      0 - user site directory is enabled
+      1 - user site directory is disabled by user
+      2 - uses site directory is disabled by super user
+          or for security reasons
+     >2 - unknown error
+    """
+    args = sys.argv[1:]
+    if not args:
+        print("sys.path = [")
+        for dir in sys.path:
+            print("    %r," % (dir,))
+        print("]")
+        def exists(path):
+            if os.path.isdir(path):
+                return "exists"
+            else:
+                return "doesn't exist"
+        print("USER_BASE: %r (%s)" % (USER_BASE, exists(USER_BASE)))
+        print("USER_SITE: %r (%s)" % (USER_SITE, exists(USER_BASE)))
+        print("ENABLE_USER_SITE: %r" %  ENABLE_USER_SITE)
+        sys.exit(0)
+
+    buffer = []
+    if '--user-base' in args:
+        buffer.append(USER_BASE)
+    if '--user-site' in args:
+        buffer.append(USER_SITE)
+
+    if buffer:
+        print(os.pathsep.join(buffer))
+        if ENABLE_USER_SITE:
+            sys.exit(0)
+        elif ENABLE_USER_SITE is False:
+            sys.exit(1)
+        elif ENABLE_USER_SITE is None:
+            sys.exit(2)
+        else:
+            sys.exit(3)
+    else:
+        import textwrap
+        print(textwrap.dedent(help % (sys.argv[0], os.pathsep)))
+        sys.exit(10)
+
+if __name__ == '__main__':
+    _script()
diff --git a/website/lib/python2.7/sre.py b/website/lib/python2.7/sre.py
new file mode 120000
index 0000000000000000000000000000000000000000..8c8bb19bfd3bd63e8f1bb2c3d67aec3313a252fe
--- /dev/null
+++ b/website/lib/python2.7/sre.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/sre.py
\ No newline at end of file
diff --git a/website/lib/python2.7/sre_compile.py b/website/lib/python2.7/sre_compile.py
new file mode 120000
index 0000000000000000000000000000000000000000..4b3f29123e5fc8ac855e3a6b84641787cf485a35
--- /dev/null
+++ b/website/lib/python2.7/sre_compile.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/sre_compile.py
\ No newline at end of file
diff --git a/website/lib/python2.7/sre_constants.py b/website/lib/python2.7/sre_constants.py
new file mode 120000
index 0000000000000000000000000000000000000000..279d5a10c29c1680340f7e39f9e46e0972516175
--- /dev/null
+++ b/website/lib/python2.7/sre_constants.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/sre_constants.py
\ No newline at end of file
diff --git a/website/lib/python2.7/sre_parse.py b/website/lib/python2.7/sre_parse.py
new file mode 120000
index 0000000000000000000000000000000000000000..2dfa1dc0927c0ad2e01a7dda9c9b0f4df03e6563
--- /dev/null
+++ b/website/lib/python2.7/sre_parse.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/sre_parse.py
\ No newline at end of file
diff --git a/website/lib/python2.7/stat.py b/website/lib/python2.7/stat.py
new file mode 120000
index 0000000000000000000000000000000000000000..ab38b0b228deab71905035c4066dee77102279de
--- /dev/null
+++ b/website/lib/python2.7/stat.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/stat.py
\ No newline at end of file
diff --git a/website/lib/python2.7/types.py b/website/lib/python2.7/types.py
new file mode 120000
index 0000000000000000000000000000000000000000..bfd968595031b9a680a7234d64c86c71e0e0de6b
--- /dev/null
+++ b/website/lib/python2.7/types.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/types.py
\ No newline at end of file
diff --git a/website/lib/python2.7/warnings.py b/website/lib/python2.7/warnings.py
new file mode 120000
index 0000000000000000000000000000000000000000..eefc53277150a58e22016bd39b935073619e9a5e
--- /dev/null
+++ b/website/lib/python2.7/warnings.py
@@ -0,0 +1 @@
+/remote/python/2.7.9/lib/python2.7/warnings.py
\ No newline at end of file
diff --git a/website/pelicanconf.py b/website/pelicanconf.py
new file mode 100644
index 0000000000000000000000000000000000000000..caeb69d53996620fc88359943f353c219e68a897
--- /dev/null
+++ b/website/pelicanconf.py
@@ -0,0 +1,46 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*- #
+from __future__ import unicode_literals
+
+AUTHOR = u'microcart'
+SITENAME = u'MicroCART'
+SITEURL = ''
+
+PATH = 'content'
+
+TIMEZONE = 'America/Chicago'
+
+DEFAULT_LANG = u'en'
+
+DEFAULT_DATE = 'fs'
+
+# Feed generation is usually not desired when developing
+FEED_ALL_ATOM = None
+CATEGORY_FEED_ATOM = None
+TRANSLATION_FEED_ATOM = None
+AUTHOR_FEED_ATOM = None
+AUTHOR_FEED_RSS = None
+
+# Blogroll
+# LINKS = (('Pelican', 'http://getpelican.com/'),
+#          ('Python.org', 'http://python.org/'),
+#          ('Jinja2', 'http://jinja.pocoo.org/'),
+#          ('You can modify those links in your config file', '#'),)
+
+# Social widget
+# SOCIAL = (('You can add links in your config file', '#'),
+#           ('Another social link', '#'),)
+
+DEFAULT_PAGINATION = False
+
+# Uncomment following line if you want document-relative URLs when developing
+#RELATIVE_URLS = True
+
+# Theme
+THEME = 'themes/notmyidea'
+
+# Static Content
+STATIC_PATHS = ['images']
+
+# Page Order
+PAGE_ORDER_BY = 'date'
diff --git a/website/pip-selfcheck.json b/website/pip-selfcheck.json
new file mode 100644
index 0000000000000000000000000000000000000000..4fd6c9632f6b661bbf5d60e8e41d6ff1a18191eb
--- /dev/null
+++ b/website/pip-selfcheck.json
@@ -0,0 +1 @@
+{"last_check":"2016-11-19T07:00:13Z","pypi_version":"9.0.1"}
\ No newline at end of file
diff --git a/website/publishconf.py b/website/publishconf.py
new file mode 100644
index 0000000000000000000000000000000000000000..85ff8ef6981db9aaf809eeb6b971ea62c7555301
--- /dev/null
+++ b/website/publishconf.py
@@ -0,0 +1,24 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*- #
+from __future__ import unicode_literals
+
+# This file is only used if you use `make publish` or
+# explicitly specify it as your config file.
+
+import os
+import sys
+sys.path.append(os.curdir)
+from pelicanconf import *
+
+SITEURL = ''
+RELATIVE_URLS = False
+
+FEED_ALL_ATOM = 'feeds/all.atom.xml'
+CATEGORY_FEED_ATOM = 'feeds/%s.atom.xml'
+
+DELETE_OUTPUT_DIRECTORY = True
+
+# Following items are often useful when publishing
+
+#DISQUS_SITENAME = ""
+#GOOGLE_ANALYTICS = ""
diff --git a/website/quad.md b/website/quad.md
deleted file mode 100644
index 4300c4cea4c795f1969a9d4fa5cadc9757c9d19d..0000000000000000000000000000000000000000
--- a/website/quad.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-layout: default
----
-
-# Quadcopter
-
-TODO
\ No newline at end of file
diff --git a/website/scripts/build.sh b/website/scripts/build.sh
new file mode 100644
index 0000000000000000000000000000000000000000..784ba4bea2faa5442f8311c97fa0fa174cbc5675
--- /dev/null
+++ b/website/scripts/build.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+source bin/activate
+pelican content
\ No newline at end of file
diff --git a/website/scripts/deploy.sh b/website/scripts/deploy.sh
new file mode 100644
index 0000000000000000000000000000000000000000..aab16ee8e19c7a9f4535a115f18ed896c683103b
--- /dev/null
+++ b/website/scripts/deploy.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+HOST=may1716.sd.ece.iastate.edu
+USERNAME=may1716
+
+if [ ! -e PASSWORD ]; then
+    echo "
+
+*****
+ERROR: File PASSWORD is missing.
+Create a file called PASSWORD in the website root directory, and put the sftp
+password in that file. No spaces. No newlines.
+(The SFTP password was given to us in an email. Just search 'sftp password' in
+your CyMail and it will probably be first result.)
+*****
+
+"
+    exit 1
+fi
+
+PASSWORD=$(cat PASSWORD)
+
+chmod -R 755 output || exit 1
+cd output || exit 1
+
+lftp<<END_SCRIPT
+open sftp://$HOST
+user $USERNAME $PASSWORD
+cd www
+mirror -R --delete-first
+exit
+END_SCRIPT
+
+echo "Website updated."
\ No newline at end of file
diff --git a/website/scripts/setup_virtualenv.sh b/website/scripts/setup_virtualenv.sh
new file mode 100644
index 0000000000000000000000000000000000000000..55240f944e9ece982bcf475e08025f88111c36aa
--- /dev/null
+++ b/website/scripts/setup_virtualenv.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+if [ ! -d bin/ ]; then
+    /remote/python/2.7.9/bin/virtualenv ./
+fi
\ No newline at end of file
diff --git a/website/themes/notmyidea/static/css/main.css b/website/themes/notmyidea/static/css/main.css
new file mode 100644
index 0000000000000000000000000000000000000000..03a77e698a9e960ec0d9f628a7ac3ae4c2ae0c1f
--- /dev/null
+++ b/website/themes/notmyidea/static/css/main.css
@@ -0,0 +1,452 @@
+/*
+	Name: Smashing HTML5
+	Date: July 2009
+	Description: Sample layout for HTML5 and CSS3 goodness.
+	Version: 1.0
+	License: MIT <http://opensource.org/licenses/MIT>
+	Licensed by: Smashing Media GmbH <http://www.smashingmagazine.com/>
+	Original author: Enrique Ramírez <http://enrique-ramirez.com/>
+*/
+
+/* Imports */
+@import url("reset.css");
+@import url("pygment.css");
+@import url("typogrify.css");
+@import url(https://fonts.googleapis.com/css?family=Yanone+Kaffeesatz&subset=latin);
+
+/***** Global *****/
+/* Body */
+body {
+    background: #F5F4EF;
+    color: #000305;
+    font-size: 87.5%; /* Base font size: 14px */
+    font-family: 'Trebuchet MS', Trebuchet, 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
+    line-height: 1.429;
+    margin: 0;
+    padding: 0;
+    text-align: left;
+}
+
+/* Headings */
+h1 {font-size: 2em }
+h2 {font-size: 1.571em}	/* 22px */
+h3 {font-size: 1.429em}	/* 20px */
+h4 {font-size: 1.286em}	/* 18px */
+h5 {font-size: 1.143em}	/* 16px */
+h6 {font-size: 1em}		/* 14px */
+
+h1, h2, h3, h4, h5, h6 {
+	font-weight: 400;
+	line-height: 1.1;
+	margin-bottom: .8em;
+    font-family: 'Yanone Kaffeesatz', arial, serif;
+}
+
+h3, h4, h5, h6 { margin-top: .8em; }
+	
+hr { border: 2px solid #EEEEEE; }
+
+/* Anchors */
+a {outline: 0;}
+a img {border: 0px; text-decoration: none;}
+a:link, a:visited {
+	color: #C74350;
+	padding: 0 1px;
+	text-decoration: underline;
+}
+a:hover, a:active {
+	background-color: #C74350;
+	color: #fff;
+	text-decoration: none;
+	text-shadow: 1px 1px 1px #333;
+}
+
+h1 a:hover {
+    background-color: inherit
+}
+	
+/* Paragraphs */
+div.line-block,
+p { margin-top: 1em;
+    margin-bottom: 1em;}
+
+strong, b {font-weight: bold;}
+em, i {font-style: italic;}
+
+/* Lists */
+ul {
+	list-style: outside disc;
+	margin: 0em 0 0 1.5em;
+}
+
+ol {
+	list-style: outside decimal;
+	margin: 0em 0 0 1.5em;
+}
+
+li { margin-top: 0.5em;
+     margin-bottom: 1em; }
+
+.post-info {
+    float:right;
+    margin:10px;
+    padding:5px;
+}
+
+.post-info p{
+    margin-top: 1px;
+    margin-bottom: 1px;
+}
+
+.readmore { float: right }
+
+dl {margin: 0 0 1.5em 0;}
+dt {font-weight: bold;}
+dd {margin-left: 1.5em;}
+
+pre{background-color:  rgb(238, 238, 238); padding: 10px; margin: 10px; overflow: auto;}
+
+/* Quotes */
+blockquote {
+    margin: 20px;
+    font-style: italic;
+}
+cite {}
+
+q {}
+
+div.note {
+   float: right;
+   margin: 5px;
+   font-size: 85%;
+   max-width: 300px;
+}
+
+/* Tables */
+table {margin: .5em auto 1.5em auto; width: 98%;}
+	
+	/* Thead */
+	thead th {padding: .5em .4em; text-align: left;}
+	thead td {}
+
+	/* Tbody */
+	tbody td {padding: .5em .4em;}
+	tbody th {}
+	
+	tbody .alt td {}
+	tbody .alt th {}
+	
+	/* Tfoot */
+	tfoot th {}
+	tfoot td {}
+	
+/* HTML5 tags */
+header, section, footer,
+aside, nav, article, figure {
+	display: block;
+}
+
+/***** Layout *****/
+.body {clear: both; margin: 0 auto; width: 800px;}
+img.right, figure.right {float: right; margin: 0 0 2em 2em;}
+img.left, figure.left {float: left; margin: 0 2em 2em 0;}
+
+/*
+	Header
+*****************/
+#banner {
+	margin: 0 auto;
+	padding: 2.5em 0 0 0;
+}
+
+	/* Banner */
+	#banner h1 {font-size: 3.571em; line-height: 0;}
+	#banner h1 a:link, #banner h1 a:visited {
+		color: #000305;
+		display: block;
+		font-weight: bold;
+		margin: 0 0 .6em .2em;
+		text-decoration: none;
+	}
+	#banner h1 a:hover, #banner h1 a:active {
+		background: none;
+		color: #C74350;
+		text-shadow: none;
+	}
+	
+	#banner h1 strong {font-size: 0.36em; font-weight: normal;}
+	
+	/* Main Nav */
+	#banner nav {
+		background: #000305;
+		font-size: 1.143em;
+		height: 40px;
+		line-height: 30px;
+		margin: 0 auto 2em auto;
+		padding: 0;
+		text-align: center;
+		width: 800px;
+		
+		border-radius: 5px;
+		-moz-border-radius: 5px;
+		-webkit-border-radius: 5px;
+	}
+	
+	#banner nav ul {list-style: none; margin: 0 auto; width: 800px;}
+	#banner nav li {float: left; display: inline; margin: 0;}
+	
+	#banner nav a:link, #banner nav a:visited {
+		color: #fff;
+		display: inline-block;
+		height: 30px;
+		padding: 5px 1.5em;
+		text-decoration: none;
+	}
+	#banner nav a:hover, #banner nav a:active,
+	#banner nav .active a:link, #banner nav .active a:visited {
+		background: #C74451;
+		color: #fff;
+		text-shadow: none !important;
+	}
+	
+	#banner nav li:first-child a {
+		border-top-left-radius: 5px;
+		-moz-border-radius-topleft: 5px;
+		-webkit-border-top-left-radius: 5px;
+		
+		border-bottom-left-radius: 5px;
+		-moz-border-radius-bottomleft: 5px;
+		-webkit-border-bottom-left-radius: 5px;
+	}
+
+/*
+	Featured
+*****************/
+#featured {
+	background: #fff;
+	margin-bottom: 2em;
+	overflow: hidden;
+	padding: 20px;
+	width: 760px;
+	
+	border-radius: 10px;
+	-moz-border-radius: 10px;
+	-webkit-border-radius: 10px;
+}
+
+#featured figure {
+	border: 2px solid #eee;
+	float: right;
+	margin: 0.786em 2em 0 5em;
+	width: 248px;
+}
+#featured figure img {display: block; float: right;}
+
+#featured h2 {color: #C74451; font-size: 1.714em; margin-bottom: 0.333em;}
+#featured h3 {font-size: 1.429em; margin-bottom: .5em;}
+
+#featured h3 a:link, #featured h3 a:visited {color: #000305; text-decoration: none;}
+#featured h3 a:hover, #featured h3 a:active {color: #fff;}
+
+/*
+	Body
+*****************/
+#content {
+	background: #fff;
+	margin-bottom: 2em;
+	overflow: hidden;
+	padding: 20px 20px;
+	width: 760px;
+	
+	border-radius: 10px;
+	-moz-border-radius: 10px;
+	-webkit-border-radius: 10px;
+}
+
+/*
+	Extras
+*****************/
+#extras {margin: 0 auto 3em auto; overflow: hidden;}
+
+#extras ul {list-style: none; margin: 0;}
+#extras li {border-bottom: 1px solid #fff;}
+#extras h2 {
+	color: #C74350;
+	font-size: 1.429em;
+	margin-bottom: .25em;
+	padding: 0 3px;
+}
+
+#extras a:link, #extras a:visited {
+	color: #444;
+	display: block;
+	border-bottom: 1px solid #F4E3E3;
+	text-decoration: none;
+	padding: .3em .25em;
+}
+
+#extras a:hover, #extras a:active {color: #fff;}
+
+	/* Blogroll */
+	#extras .blogroll {
+		float: left;
+		width: 615px;
+	}
+	
+	#extras .blogroll li {float: left; margin: 0 20px 0 0; width: 185px;}
+	
+	/* Social */
+	#extras .social {
+		float: right;
+		width: 175px;
+	}
+	
+	#extras div[class='social'] a {
+		background-repeat: no-repeat;
+		background-position: 3px 6px;
+		padding-left: 25px;
+	}
+	
+		/* Icons */
+		.social a[href*='about.me'] {background-image: url('../images/icons/aboutme.png');}
+		.social a[href*='bitbucket.org'] {background-image: url('../images/icons/bitbucket.png');}
+		.social a[href*='delicious.com'] {background-image: url('../images/icons/delicious.png');}
+		.social a[href*='digg.com'] {background-image: url('../images/icons/digg.png');}
+		.social a[href*='facebook.com'] {background-image: url('../images/icons/facebook.png');}
+		.social a[href*='gitorious.org'] {background-image: url('../images/icons/gitorious.png');}
+		.social a[href*='github.com'],
+		.social a[href*='git.io'] {
+			background-image: url('../images/icons/github.png');
+			background-size: 16px 16px;
+		}
+		.social a[href*='gittip.com'] {background-image: url('../images/icons/gittip.png');}
+		.social a[href*='plus.google.com'] {background-image: url('../images/icons/google-plus.png');}
+		.social a[href*='groups.google.com'] {background-image: url('../images/icons/google-groups.png');}
+		.social a[href*='news.ycombinator.com'],
+		.social a[href*='hackernewsers.com'] {background-image: url('../images/icons/hackernews.png');}
+		.social a[href*='last.fm'], .social a[href*='lastfm.'] {background-image: url('../images/icons/lastfm.png');}
+		.social a[href*='linkedin.com'] {background-image: url('../images/icons/linkedin.png');}
+		.social a[href*='reddit.com'] {background-image: url('../images/icons/reddit.png');}
+		.social a[type$='atom+xml'], .social a[type$='rss+xml'] {background-image: url('../images/icons/rss.png');}
+		.social a[href*='slideshare.net'] {background-image: url('../images/icons/slideshare.png');}
+		.social a[href*='speakerdeck.com'] {background-image: url('../images/icons/speakerdeck.png');}
+		.social a[href*='stackoverflow.com'] {background-image: url('../images/icons/stackoverflow.png');}
+		.social a[href*='twitter.com'] {background-image: url('../images/icons/twitter.png');}
+		.social a[href*='vimeo.com'] {background-image: url('../images/icons/vimeo.png');}
+		.social a[href*='youtube.com'] {background-image: url('../images/icons/youtube.png');}
+
+/*
+	About
+*****************/
+#about {
+	background: #fff;
+	font-style: normal;
+	margin-bottom: 2em;
+	overflow: hidden;
+	padding: 20px;
+	text-align: left;
+	width: 760px;
+	
+	border-radius: 10px;
+	-moz-border-radius: 10px;
+	-webkit-border-radius: 10px;
+}
+
+#about .primary {float: left; width: 165px;}
+#about .primary strong {color: #C64350; display: block; font-size: 1.286em;}
+#about .photo {float: left; margin: 5px 20px;}
+
+#about .url:link, #about .url:visited {text-decoration: none;}
+
+#about .bio {float: right; width: 500px;}
+
+/*
+	Footer
+*****************/
+#contentinfo {padding-bottom: 2em; text-align: right;}
+
+/***** Sections *****/
+/* Blog */
+.hentry {
+	display: block;
+	clear: both;
+	border-bottom: 1px solid #eee;
+	padding: 1.5em 0;
+}
+li:last-child .hentry, #content > .hentry {border: 0; margin: 0;}
+#content > .hentry {padding: 1em 0;}
+.hentry img{display : none ;}
+.entry-title {font-size: 3em; margin-bottom: 10px; margin-top: 0;}
+.entry-title a:link, .entry-title a:visited {text-decoration: none; color: #333;}
+.entry-title a:visited {background-color: #fff;}
+
+.hentry .post-info * {font-style: normal;}
+
+	/* Content */
+	.hentry footer {margin-bottom: 2em;}
+	.hentry footer address {display: inline;}
+	#posts-list footer address {display: block;}
+
+	/* Blog Index */
+	#posts-list {list-style: none; margin: 0;}
+	#posts-list .hentry {padding-left: 10px; position: relative;}
+	
+	#posts-list footer {
+		left: 10px;
+		position: relative;
+        float: left;
+		top: 0.5em;
+		width: 190px;
+	}
+	
+	/* About the Author */
+	#about-author {
+		background: #f9f9f9;
+		clear: both;
+		font-style: normal;
+		margin: 2em 0;
+		padding: 10px 20px 15px 20px;
+		
+		border-radius: 5px;
+		-moz-border-radius: 5px;
+		-webkit-border-radius: 5px;
+	}
+	
+	#about-author strong {
+		color: #C64350;
+		clear: both;
+		display: block;
+		font-size: 1.429em;
+	}
+	
+	#about-author .photo {border: 1px solid #ddd; float: left; margin: 5px 1em 0 0;}
+	
+	/* Comments */
+	#comments-list {list-style: none; margin: 0 1em;}
+	#comments-list blockquote {
+		background: #f8f8f8;
+		clear: both;
+		font-style: normal;
+		margin: 0;
+		padding: 15px 20px;
+		
+		border-radius: 5px;
+		-moz-border-radius: 5px;
+		-webkit-border-radius: 5px;
+	}
+	#comments-list footer {color: #888; padding: .5em 1em 0 0; text-align: right;}
+	
+	#comments-list li:nth-child(2n) blockquote {background: #F5f5f5;}
+	
+	/* Add a Comment */
+	#add-comment label {clear: left; float: left; text-align: left; width: 150px;}
+	#add-comment input[type='text'],
+	#add-comment input[type='email'],
+	#add-comment input[type='url'] {float: left; width: 200px;}
+	
+	#add-comment textarea {float: left; height: 150px; width: 495px;}
+	
+	#add-comment p.req {clear: both; margin: 0 .5em 1em 0; text-align: right;}
+	
+	#add-comment input[type='submit'] {float: right; margin: 0 .5em;}
+	#add-comment * {margin-bottom: .5em;}
diff --git a/website/themes/notmyidea/static/css/pygment.css b/website/themes/notmyidea/static/css/pygment.css
new file mode 100644
index 0000000000000000000000000000000000000000..fdd056f6f8bbe4f98bb887d7d427b1f9d03acde8
--- /dev/null
+++ b/website/themes/notmyidea/static/css/pygment.css
@@ -0,0 +1,205 @@
+.hll {
+background-color:#eee;
+}
+.c {
+color:#408090;
+font-style:italic;
+}
+.err {
+border:1px solid #FF0000;
+}
+.k {
+color:#007020;
+font-weight:bold;
+}
+.o {
+color:#666666;
+}
+.cm {
+color:#408090;
+font-style:italic;
+}
+.cp {
+color:#007020;
+}
+.c1 {
+color:#408090;
+font-style:italic;
+}
+.cs {
+background-color:#FFF0F0;
+color:#408090;
+}
+.gd {
+color:#A00000;
+}
+.ge {
+font-style:italic;
+}
+.gr {
+color:#FF0000;
+}
+.gh {
+color:#000080;
+font-weight:bold;
+}
+.gi {
+color:#00A000;
+}
+.go {
+color:#303030;
+}
+.gp {
+color:#C65D09;
+font-weight:bold;
+}
+.gs {
+font-weight:bold;
+}
+.gu {
+color:#800080;
+font-weight:bold;
+}
+.gt {
+color:#0040D0;
+}
+.kc {
+color:#007020;
+font-weight:bold;
+}
+.kd {
+color:#007020;
+font-weight:bold;
+}
+.kn {
+color:#007020;
+font-weight:bold;
+}
+.kp {
+color:#007020;
+}
+.kr {
+color:#007020;
+font-weight:bold;
+}
+.kt {
+color:#902000;
+}
+.m {
+color:#208050;
+}
+.s {
+color:#4070A0;
+}
+.na {
+color:#4070A0;
+}
+.nb {
+color:#007020;
+}
+.nc {
+color:#0E84B5;
+font-weight:bold;
+}
+.no {
+color:#60ADD5;
+}
+.nd {
+color:#555555;
+font-weight:bold;
+}
+.ni {
+color:#D55537;
+font-weight:bold;
+}
+.ne {
+color:#007020;
+}
+.nf {
+color:#06287E;
+}
+.nl {
+color:#002070;
+font-weight:bold;
+}
+.nn {
+color:#0E84B5;
+font-weight:bold;
+}
+.nt {
+color:#062873;
+font-weight:bold;
+}
+.nv {
+color:#BB60D5;
+}
+.ow {
+color:#007020;
+font-weight:bold;
+}
+.w {
+color:#BBBBBB;
+}
+.mf {
+color:#208050;
+}
+.mh {
+color:#208050;
+}
+.mi {
+color:#208050;
+}
+.mo {
+color:#208050;
+}
+.sb {
+color:#4070A0;
+}
+.sc {
+color:#4070A0;
+}
+.sd {
+color:#4070A0;
+font-style:italic;
+}
+.s2 {
+color:#4070A0;
+}
+.se {
+color:#4070A0;
+font-weight:bold;
+}
+.sh {
+color:#4070A0;
+}
+.si {
+color:#70A0D0;
+font-style:italic;
+}
+.sx {
+color:#C65D09;
+}
+.sr {
+color:#235388;
+}
+.s1 {
+color:#4070A0;
+}
+.ss {
+color:#517918;
+}
+.bp {
+color:#007020;
+}
+.vc {
+color:#BB60D5;
+}
+.vg {
+color:#BB60D5;
+}
+.vi {
+color:#BB60D5;
+}
+.il {
+color:#208050;
+}
diff --git a/website/themes/notmyidea/static/css/reset.css b/website/themes/notmyidea/static/css/reset.css
new file mode 100644
index 0000000000000000000000000000000000000000..1e217566acc77f4b4aa491e92b69806b5d71f950
--- /dev/null
+++ b/website/themes/notmyidea/static/css/reset.css
@@ -0,0 +1,52 @@
+/*
+	Name: Reset Stylesheet
+	Description: Resets browser's default CSS
+	Author: Eric Meyer
+	Author URI: http://meyerweb.com/eric/tools/css/reset/
+*/
+
+/* v1.0 | 20080212 */
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, font, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td {
+	background: transparent;
+	border: 0;
+	font-size: 100%;
+	margin: 0;
+	outline: 0;
+	padding: 0;
+	vertical-align: baseline;
+}
+
+body {line-height: 1;}
+
+ol, ul {list-style: none;}
+
+blockquote, q {quotes: none;}
+
+blockquote:before, blockquote:after,
+q:before, q:after {
+	content: '';
+	content: none;
+}
+
+/* remember to define focus styles! */
+:focus {
+	outline: 0;
+}
+
+/* remember to highlight inserts somehow! */
+ins {text-decoration: none;}
+del {text-decoration: line-through;}
+
+/* tables still need 'cellspacing="0"' in the markup */
+table {
+	border-collapse: collapse;
+	border-spacing: 0;
+}
\ No newline at end of file
diff --git a/website/themes/notmyidea/static/css/typogrify.css b/website/themes/notmyidea/static/css/typogrify.css
new file mode 100644
index 0000000000000000000000000000000000000000..c9b34dc8a8754da5a484932fbfe976ff60bdca3f
--- /dev/null
+++ b/website/themes/notmyidea/static/css/typogrify.css
@@ -0,0 +1,3 @@
+.caps {font-size:.92em;}
+.amp {color:#666; font-size:1.05em;font-family:"Warnock Pro", "Goudy Old Style","Palatino","Book Antiqua",serif; font-style:italic;}    
+.dquo {margin-left:-.38em;}
diff --git a/website/themes/notmyidea/static/css/wide.css b/website/themes/notmyidea/static/css/wide.css
new file mode 100644
index 0000000000000000000000000000000000000000..88fd59ceb7d5c6bbfc989d3a5e9cb4df3cdfb80b
--- /dev/null
+++ b/website/themes/notmyidea/static/css/wide.css
@@ -0,0 +1,48 @@
+@import url("main.css");
+
+body {
+    font:1.3em/1.3 "Hoefler Text","Georgia",Georgia,serif,sans-serif;
+}
+
+.post-info{
+    display: none;
+}
+
+#banner nav {
+    display: none;
+    -moz-border-radius: 0px;
+    margin-bottom: 20px;
+    overflow: hidden;
+    font-size: 1em;
+    background: #F5F4EF;
+}
+
+#banner nav ul{
+    padding-right: 50px;
+}
+
+#banner nav li{
+    float: right;
+    color: #000;
+}
+
+#banner nav li a {
+    color: #000;
+}
+
+#banner h1 {
+    margin-bottom: -18px;
+}
+
+#featured, #extras {
+    padding: 50px;
+}
+
+#featured {
+    padding-top: 20px;
+}
+
+#extras {
+    padding-top: 0px;
+    padding-bottom: 0px;
+}
diff --git a/website/themes/notmyidea/static/images/icons/aboutme.png b/website/themes/notmyidea/static/images/icons/aboutme.png
new file mode 100644
index 0000000000000000000000000000000000000000..9609df3bd9d766cd4b827fb0a8339b700c1abf24
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/aboutme.png differ
diff --git a/website/themes/notmyidea/static/images/icons/bitbucket.png b/website/themes/notmyidea/static/images/icons/bitbucket.png
new file mode 100644
index 0000000000000000000000000000000000000000..d05ba1610eab6ec3f9a4dcae689d4d88bda5433f
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/bitbucket.png differ
diff --git a/website/themes/notmyidea/static/images/icons/delicious.png b/website/themes/notmyidea/static/images/icons/delicious.png
new file mode 100644
index 0000000000000000000000000000000000000000..3dccdd848ec99fba9950e8195d4e73867ada2738
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/delicious.png differ
diff --git a/website/themes/notmyidea/static/images/icons/facebook.png b/website/themes/notmyidea/static/images/icons/facebook.png
new file mode 100644
index 0000000000000000000000000000000000000000..74e7ad52f362b56d584df459bc5141395c32b7ed
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/facebook.png differ
diff --git a/website/themes/notmyidea/static/images/icons/github.png b/website/themes/notmyidea/static/images/icons/github.png
new file mode 100644
index 0000000000000000000000000000000000000000..8b25551a97921681334176ee143b41510a117d86
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/github.png differ
diff --git a/website/themes/notmyidea/static/images/icons/gitorious.png b/website/themes/notmyidea/static/images/icons/gitorious.png
new file mode 100644
index 0000000000000000000000000000000000000000..3eeb3ecec36a73ff505e04ecdecbcc4792ef6786
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/gitorious.png differ
diff --git a/website/themes/notmyidea/static/images/icons/gittip.png b/website/themes/notmyidea/static/images/icons/gittip.png
new file mode 100644
index 0000000000000000000000000000000000000000..af949625ac83d2441215c81650e897c97d9e5d95
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/gittip.png differ
diff --git a/website/themes/notmyidea/static/images/icons/google-groups.png b/website/themes/notmyidea/static/images/icons/google-groups.png
new file mode 100644
index 0000000000000000000000000000000000000000..5de15e68f4d1e4176b46fe6346d42f53e3296b21
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/google-groups.png differ
diff --git a/website/themes/notmyidea/static/images/icons/google-plus.png b/website/themes/notmyidea/static/images/icons/google-plus.png
new file mode 100644
index 0000000000000000000000000000000000000000..3c6b74324031611f20c0a3810131aa74fd0a5a9f
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/google-plus.png differ
diff --git a/website/themes/notmyidea/static/images/icons/hackernews.png b/website/themes/notmyidea/static/images/icons/hackernews.png
new file mode 100644
index 0000000000000000000000000000000000000000..fc7a82d4d68068d5fb032885b93e670c385ae1b4
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/hackernews.png differ
diff --git a/website/themes/notmyidea/static/images/icons/lastfm.png b/website/themes/notmyidea/static/images/icons/lastfm.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a6c6262b644dadbcf6cce5dfe4fed9740a9ec1f
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/lastfm.png differ
diff --git a/website/themes/notmyidea/static/images/icons/linkedin.png b/website/themes/notmyidea/static/images/icons/linkedin.png
new file mode 100644
index 0000000000000000000000000000000000000000..d29c1201bcb0c278d49f573f9ef95ebfe932fb5b
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/linkedin.png differ
diff --git a/website/themes/notmyidea/static/images/icons/reddit.png b/website/themes/notmyidea/static/images/icons/reddit.png
new file mode 100644
index 0000000000000000000000000000000000000000..71ae1215ac8ea274f089cc4aa55eaf8a546dea67
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/reddit.png differ
diff --git a/website/themes/notmyidea/static/images/icons/rss.png b/website/themes/notmyidea/static/images/icons/rss.png
new file mode 100644
index 0000000000000000000000000000000000000000..7862c65afeb66ba9cc7e9576a3a62b850b2e184d
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/rss.png differ
diff --git a/website/themes/notmyidea/static/images/icons/slideshare.png b/website/themes/notmyidea/static/images/icons/slideshare.png
new file mode 100644
index 0000000000000000000000000000000000000000..ecc97410138bb3c457a898b1e868b22ae9db9989
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/slideshare.png differ
diff --git a/website/themes/notmyidea/static/images/icons/speakerdeck.png b/website/themes/notmyidea/static/images/icons/speakerdeck.png
new file mode 100644
index 0000000000000000000000000000000000000000..087d0931caa301f8a1bba1497e1b91b7a7f105a4
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/speakerdeck.png differ
diff --git a/website/themes/notmyidea/static/images/icons/stackoverflow.png b/website/themes/notmyidea/static/images/icons/stackoverflow.png
new file mode 100644
index 0000000000000000000000000000000000000000..f5b65e9990dbf423ff652b297f1d0172c8c1cf27
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/stackoverflow.png differ
diff --git a/website/themes/notmyidea/static/images/icons/twitter.png b/website/themes/notmyidea/static/images/icons/twitter.png
new file mode 100644
index 0000000000000000000000000000000000000000..057ab004b5d826e151a4f9cc6a66d88caffa8911
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/twitter.png differ
diff --git a/website/themes/notmyidea/static/images/icons/vimeo.png b/website/themes/notmyidea/static/images/icons/vimeo.png
new file mode 100644
index 0000000000000000000000000000000000000000..dba472022f0fcf7ecdd8f4847a8a3bde90789bc7
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/vimeo.png differ
diff --git a/website/themes/notmyidea/static/images/icons/youtube.png b/website/themes/notmyidea/static/images/icons/youtube.png
new file mode 100644
index 0000000000000000000000000000000000000000..ce6cbe4fdaf6e7dff56c0418a19bd1466a40a02e
Binary files /dev/null and b/website/themes/notmyidea/static/images/icons/youtube.png differ
diff --git a/website/themes/notmyidea/templates/analytics.html b/website/themes/notmyidea/templates/analytics.html
new file mode 100644
index 0000000000000000000000000000000000000000..465754e2836db4f7f1251743d3e1852697ab69cd
--- /dev/null
+++ b/website/themes/notmyidea/templates/analytics.html
@@ -0,0 +1,46 @@
+{% if GOOGLE_ANALYTICS %}
+    <script type="text/javascript">
+    var _gaq = _gaq || [];
+    _gaq.push(['_setAccount', '{{GOOGLE_ANALYTICS}}']);
+    _gaq.push(['_trackPageview']);
+    (function() {
+        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+        ga.src = 'https://ssl.google-analytics.com/ga.js';
+        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+    })();
+    </script>
+{% endif %}
+{% if GAUGES %}
+    <script type="text/javascript">
+    var _gauges = _gauges || [];
+    (function() {
+        var t   = document.createElement('script');
+        t.type  = 'text/javascript';
+        t.async = true;
+        t.id    = 'gauges-tracker';
+        t.setAttribute('data-site-id', '{{GAUGES}}');
+        t.src = '//secure.gaug.es/track.js';
+        var s = document.getElementsByTagName('script')[0];
+        s.parentNode.insertBefore(t, s);
+    })();
+    </script>
+{% endif %}
+{% if PIWIK_URL and PIWIK_SITE_ID %}
+    <script type="text/javascript">
+    {% if PIWIK_SSL_URL %}
+        var pkBaseURL = "{{ PIWIK_SSL_URL }}";
+    {% else %}
+        var pkBaseURL = "{{ PIWIK_URL }}";
+    {% endif %}
+    var _paq = _paq || [];
+    _paq.push(["trackPageView"]);
+    _paq.push(["enableLinkTracking"]);
+    (function() {
+        var u=(("https:" == document.location.protocol) ? "https" : "http")+"://"+pkBaseURL+"/";
+        _paq.push(["setTrackerUrl", u+"piwik.php"]);
+        _paq.push(["setSiteId", "{{ PIWIK_SITE_ID }}"]);
+        var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript";
+        g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s);
+    })();
+    </script>
+{% endif %}
diff --git a/website/themes/notmyidea/templates/archives.html b/website/themes/notmyidea/templates/archives.html
new file mode 100644
index 0000000000000000000000000000000000000000..f6784942f45a5dc81b7cf4da3148d90009470b77
--- /dev/null
+++ b/website/themes/notmyidea/templates/archives.html
@@ -0,0 +1,13 @@
+{% extends "base.html" %}
+{% block content %}
+<section id="content" class="body">
+<h1>Archives for {{ SITENAME }}</h1>
+
+<dl>
+{% for article in dates %}
+    <dt>{{ article.locale_date }}</dt>
+    <dd><a href="{{ SITEURL }}/{{ article.url }}">{{ article.title }}</a></dd>
+{% endfor %}
+</dl>
+</section>
+{% endblock %}
diff --git a/website/themes/notmyidea/templates/article.html b/website/themes/notmyidea/templates/article.html
new file mode 100644
index 0000000000000000000000000000000000000000..06110b4312142d12bddf3ce098df6d576a861ef9
--- /dev/null
+++ b/website/themes/notmyidea/templates/article.html
@@ -0,0 +1,37 @@
+{% extends "base.html" %}
+{% block title %}{{ article.title|striptags }}{% endblock %}
+{% block content %}
+<section id="content" class="body">
+  <article>
+    <header>
+      <h1 class="entry-title">
+        <a href="{{ SITEURL }}/{{ article.url }}" rel="bookmark"
+           title="Permalink to {{ article.title|striptags }}">{{ article.title }}</a></h1>
+      {% include 'twitter.html' %}
+    </header>
+
+    <div class="entry-content">
+      {% include 'article_infos.html' %}
+      {{ article.content }}
+    </div><!-- /.entry-content -->
+    {% if DISQUS_SITENAME and SITEURL and article.status != "draft" %}
+    <div class="comments">
+      <h2>Comments !</h2>
+      <div id="disqus_thread"></div>
+      <script type="text/javascript">
+        var disqus_shortname = '{{ DISQUS_SITENAME }}';
+        var disqus_identifier = '{{ article.url }}';
+        var disqus_url = '{{ SITEURL }}/{{ article.url }}';
+        (function() {
+        var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
+        dsq.src = '//{{ DISQUS_SITENAME }}.disqus.com/embed.js';
+        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
+        })();
+      </script>
+      <noscript>Please enable JavaScript to view the comments.</noscript>
+    </div>
+    {% endif %}
+
+  </article>
+</section>
+{% endblock %}
diff --git a/website/themes/notmyidea/templates/article_infos.html b/website/themes/notmyidea/templates/article_infos.html
new file mode 100644
index 0000000000000000000000000000000000000000..172ad85dd748cad2c5ed9af2914163ad16004f10
--- /dev/null
+++ b/website/themes/notmyidea/templates/article_infos.html
@@ -0,0 +1,23 @@
+<footer class="post-info">
+        <abbr class="published" title="{{ article.date.isoformat() }}">
+                Published: {{ article.locale_date }}
+        </abbr>
+        {% if article.modified %}
+		<br />
+        <abbr class="modified" title="{{ article.modified.isoformat() }}">
+                Updated: {{ article.locale_modified }}
+        </abbr>
+        {% endif %}
+
+        {% if article.authors %}
+        <address class="vcard author">
+                By {% for author in article.authors %}
+                        <a class="url fn" href="{{ SITEURL }}/{{ author.url }}">{{ author }}</a>
+                {% endfor %}
+        </address>
+        {% endif %}
+<p>In <a href="{{ SITEURL }}/{{ article.category.url }}">{{ article.category }}</a>.</p>
+{% include 'taglist.html' %}
+{% import 'translations.html' as translations with context %}
+{{ translations.translations_for(article) }}
+</footer><!-- /.post-info -->
diff --git a/website/themes/notmyidea/templates/author.html b/website/themes/notmyidea/templates/author.html
new file mode 100644
index 0000000000000000000000000000000000000000..0b372902d5552cb93a0eed266b6fd851f63bd1be
--- /dev/null
+++ b/website/themes/notmyidea/templates/author.html
@@ -0,0 +1,2 @@
+{% extends "index.html" %}
+{% block title %}{{ SITENAME }} - {{ author }}{% endblock %}
diff --git a/website/themes/notmyidea/templates/authors.html b/website/themes/notmyidea/templates/authors.html
new file mode 100644
index 0000000000000000000000000000000000000000..e61a332f1e6dfe570b18658b37019141906818ea
--- /dev/null
+++ b/website/themes/notmyidea/templates/authors.html
@@ -0,0 +1,16 @@
+{% extends "base.html" %}
+
+{% block title %}{{ SITENAME }} - Authors{% endblock %}
+
+{% block content %}
+
+<section id="content" class="body">
+    <h1>Authors on {{ SITENAME }}</h1>
+    <ul>
+    {% for author, articles in authors|sort %}
+        <li><a href="{{ SITEURL }}/{{ author.url }}">{{ author }}</a> ({{ articles|count }})</li>
+    {% endfor %}
+    </ul>
+</section>
+
+{% endblock %}
diff --git a/website/themes/notmyidea/templates/base.html b/website/themes/notmyidea/templates/base.html
new file mode 100644
index 0000000000000000000000000000000000000000..45ab4044e3f27508c6d1c8e55b0472146e2c8c35
--- /dev/null
+++ b/website/themes/notmyidea/templates/base.html
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<html lang="{{ DEFAULT_LANG }}">
+<head>
+        <meta charset="utf-8" />
+        <title>{% block title %}{{ SITENAME }}{%endblock%}</title>
+        <link rel="stylesheet" href="{{ SITEURL }}/{{ THEME_STATIC_DIR }}/css/{{ CSS_FILE }}" />
+        {% if FEED_ALL_ATOM %}
+        <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Atom Feed" />
+        {% endif %}
+        {% if FEED_ALL_RSS %}
+        <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} RSS Feed" />
+        {% endif %}
+
+        <!--[if IE]>
+            <script src="https://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
+        <![endif]-->
+</head>
+
+<body id="index" class="home">
+{% include 'github.html' %}
+        <header id="banner" class="body">
+                <h1><a href="{{ SITEURL }}/">{{ SITENAME }} {% if SITESUBTITLE %} <strong>{{ SITESUBTITLE }}</strong>{% endif %}</a></h1>
+                <nav><ul>
+                {% for title, link in MENUITEMS %}
+                    <li><a href="{{ link }}">{{ title }}</a></li>
+                {% endfor %}
+                {% if DISPLAY_PAGES_ON_MENU -%}
+                {% for pg in PAGES %}
+                    <li{% if pg == page %} class="active"{% endif %}><a href="{{ SITEURL }}/{{ pg.url }}">{{ pg.title }}</a></li>
+                {% endfor %}
+                {% endif %}
+                {% if DISPLAY_CATEGORIES_ON_MENU -%}
+                {% for cat, null in categories %}
+                    <li{% if cat == category %} class="active"{% endif %}><a href="{{ SITEURL }}/{{ cat.url }}">{{ cat }}</a></li>
+                {% endfor %}
+                {% endif %}
+                </ul></nav>
+        </header><!-- /#banner -->
+        {% block content %}
+        {% endblock %}
+        <section id="extras" class="body">
+        {% if LINKS %}
+                <div class="blogroll">
+                        <h2>blogroll</h2>
+                        <ul>
+                        {% for name, link in LINKS %}
+                            <li><a href="{{ link }}">{{ name }}</a></li>
+                        {% endfor %}
+                        </ul>
+                </div><!-- /.blogroll -->
+        {% endif %}
+        {% if SOCIAL or FEED_ALL_ATOM or FEED_ALL_RSS %}
+                <div class="social">
+                        <h2>social</h2>
+                        <ul>
+                            {% if FEED_ALL_ATOM %}
+                            <li><a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate">atom feed</a></li>
+                            {% endif %}
+                            {% if FEED_ALL_RSS %}
+                            <li><a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}" type="application/rss+xml" rel="alternate">rss feed</a></li>
+                            {% endif %}
+
+                        {% for name, link in SOCIAL %}
+                            <li><a href="{{ link }}">{{ name }}</a></li>
+                        {% endfor %}
+                        </ul>
+                </div><!-- /.social -->
+        {% endif %}
+        </section><!-- /#extras -->
+
+        <footer id="contentinfo" class="body">
+                <address id="about" class="vcard body">
+                Proudly powered by <a href="http://getpelican.com/">Pelican</a>, which takes great advantage of <a href="http://python.org">Python</a>.
+                </address><!-- /#about -->
+
+                <p>The theme is by <a href="http://coding.smashingmagazine.com/2009/08/04/designing-a-html-5-layout-from-scratch/">Smashing Magazine</a>, thanks!</p>
+        </footer><!-- /#contentinfo -->
+
+{% include 'analytics.html' %}
+{% include 'disqus_script.html' %}
+</body>
+</html>
diff --git a/website/themes/notmyidea/templates/category.html b/website/themes/notmyidea/templates/category.html
new file mode 100644
index 0000000000000000000000000000000000000000..56f8e93e949d635765ff09cdd9a1c7e9209676a9
--- /dev/null
+++ b/website/themes/notmyidea/templates/category.html
@@ -0,0 +1,2 @@
+{% extends "index.html" %}
+{% block title %}{{ SITENAME }} - {{ category }}{% endblock %}
diff --git a/website/themes/notmyidea/templates/comments.html b/website/themes/notmyidea/templates/comments.html
new file mode 100644
index 0000000000000000000000000000000000000000..bb033c0f4baeae5d2b32851548f9a1d11f55952b
--- /dev/null
+++ b/website/themes/notmyidea/templates/comments.html
@@ -0,0 +1 @@
+{% if DISQUS_SITENAME %}<p>There are <a href="{{ SITEURL }}/{{ article.url }}#disqus_thread">comments</a>.</p>{% endif %}
diff --git a/website/themes/notmyidea/templates/disqus_script.html b/website/themes/notmyidea/templates/disqus_script.html
new file mode 100644
index 0000000000000000000000000000000000000000..23ec532a9bf73ea07bbf3b50a7b604483368744d
--- /dev/null
+++ b/website/themes/notmyidea/templates/disqus_script.html
@@ -0,0 +1,11 @@
+{% if DISQUS_SITENAME %}
+<script type="text/javascript">
+    var disqus_shortname = '{{ DISQUS_SITENAME }}';
+    (function () {
+        var s = document.createElement('script'); s.async = true;
+        s.type = 'text/javascript';
+        s.src = 'https://' + disqus_shortname + '.disqus.com/count.js';
+        (document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
+    }());
+</script>
+{% endif %}
diff --git a/website/themes/notmyidea/templates/github.html b/website/themes/notmyidea/templates/github.html
new file mode 100644
index 0000000000000000000000000000000000000000..ccc401fe6ee9ec671d062ce59f6f1f53b45c097e
--- /dev/null
+++ b/website/themes/notmyidea/templates/github.html
@@ -0,0 +1,9 @@
+{% if GITHUB_URL %}
+<a href="{{ GITHUB_URL }}">
+{% if GITHUB_POSITION != "left" %}
+<img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_red_aa0000.png" alt="Fork me on GitHub" />
+{% else %}
+<img style="position: absolute; top: 0; left: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_left_white_ffffff.png" alt="Fork me on GitHub" />
+{% endif %}
+</a>
+{% endif %}
diff --git a/website/themes/notmyidea/templates/index.html b/website/themes/notmyidea/templates/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..6019987becb4047ed0f838fb26f3214f2f7bd99c
--- /dev/null
+++ b/website/themes/notmyidea/templates/index.html
@@ -0,0 +1,59 @@
+{% extends "base.html" %}
+{% block content_title %}{% endblock %}
+{% block content %}
+{% if articles %}
+    {% for article in articles_page.object_list %}
+
+        {# First item #}
+        {% if loop.first and not articles_page.has_previous() %}
+            <aside id="featured" class="body">
+                <article>
+                    <h1 class="entry-title"><a href="{{ SITEURL }}/{{ article.url }}">{{ article.title }}</a></h1>
+                    {% include 'article_infos.html' %}{{ article.content }}{% include 'comments.html' %}
+                </article>
+            </aside><!-- /#featured -->
+            {% if loop.length > 1 %}
+                <section id="content" class="body">
+                    <h1>Other articles</h1>
+                    <hr />
+                    <ol id="posts-list" class="hfeed">
+            {% endif %}
+        {# other items #}
+        {% else %}
+            {% if loop.first %}
+                <section id="content" class="body">
+                    <ol id="posts-list" class="hfeed" start="{{ articles_paginator.per_page -1 }}">
+            {% endif %}
+            <li><article class="hentry">
+                <header>
+                    <h1><a href="{{ SITEURL }}/{{ article.url }}" rel="bookmark"
+                           title="Permalink to {{ article.title|striptags }}">{{ article.title }}</a></h1>
+                </header>
+
+                <div class="entry-content">
+                {% include 'article_infos.html' %}
+                {{ article.summary }}
+                <a class="readmore" href="{{ SITEURL }}/{{ article.url }}">read more</a>
+                {% include 'comments.html' %}
+                </div><!-- /.entry-content -->
+            </article></li>
+        {% endif %}
+        {% if loop.last %}
+            {% if loop.length > 1 or articles_page.has_other_pages() %}
+                </ol><!-- /#posts-list -->
+                {% if articles_page.has_other_pages() %}
+                    {% include 'pagination.html' %}
+                {% endif %}
+                </section><!-- /#content -->
+            {% endif %}
+        {% endif %}
+    {% endfor %}
+{% else %}
+<section id="content" class="body">
+<h2>Pages</h2>
+    {% for page in PAGES %}
+        <li><a href="{{ SITEURL }}/{{ page.url }}">{{ page.title }}</a></li>
+    {% endfor %}
+</section>
+{% endif %}
+{% endblock content %}
diff --git a/website/themes/notmyidea/templates/page.html b/website/themes/notmyidea/templates/page.html
new file mode 100644
index 0000000000000000000000000000000000000000..0d8283fe4fd88e565e47f87d8a1532a771c0afda
--- /dev/null
+++ b/website/themes/notmyidea/templates/page.html
@@ -0,0 +1,10 @@
+{% extends "base.html" %}
+{% block title %}{{ page.title }}{% endblock %}
+{% block content %}
+<section id="content" class="body">
+    <h1 class="entry-title">{{ page.title }}</h1>
+    {% import 'translations.html' as translations with context %}
+    {{ translations.translations_for(page) }}
+    {{ page.content }}
+</section>
+{% endblock %}
diff --git a/website/themes/notmyidea/templates/period_archives.html b/website/themes/notmyidea/templates/period_archives.html
new file mode 100644
index 0000000000000000000000000000000000000000..252e002f59466d940a4203354c294a57ec82b7b7
--- /dev/null
+++ b/website/themes/notmyidea/templates/period_archives.html
@@ -0,0 +1,13 @@
+{% extends "base.html" %}
+{% block content %}
+<section id="content" class="body">
+<h1>Archives for {{ period | reverse | join(' ') }}</h1>
+
+<dl>
+{% for article in dates %}
+    <dt>{{ article.locale_date }}</dt>
+    <dd><a href="{{ SITEURL }}/{{ article.url }}">{{ article.title }}</a></dd>
+{% endfor %}
+</dl>
+</section>
+{% endblock %}
diff --git a/website/themes/notmyidea/templates/tag.html b/website/themes/notmyidea/templates/tag.html
new file mode 100644
index 0000000000000000000000000000000000000000..68cdcba652b9621a24990b45ec734c859914355f
--- /dev/null
+++ b/website/themes/notmyidea/templates/tag.html
@@ -0,0 +1,2 @@
+{% extends "index.html" %}
+{% block title %}{{ SITENAME }} - {{ tag }}{% endblock %}
diff --git a/website/themes/notmyidea/templates/taglist.html b/website/themes/notmyidea/templates/taglist.html
new file mode 100644
index 0000000000000000000000000000000000000000..58f3557638746dc3bbdc75b1c9d55bf7d16892ce
--- /dev/null
+++ b/website/themes/notmyidea/templates/taglist.html
@@ -0,0 +1 @@
+{% if article.tags %}<p>tags: {% for tag in article.tags %}<a href="{{ SITEURL }}/{{ tag.url }}">{{ tag | escape }}</a> {% endfor %}</p>{% endif %}
diff --git a/website/themes/notmyidea/templates/tags.html b/website/themes/notmyidea/templates/tags.html
new file mode 100644
index 0000000000000000000000000000000000000000..fb099557b9747514c90984b8d12a847a4b72fb50
--- /dev/null
+++ b/website/themes/notmyidea/templates/tags.html
@@ -0,0 +1,16 @@
+{% extends "base.html" %}
+
+{% block title %}{{ SITENAME }} - Tags{% endblock %}
+
+{% block content %}
+
+<section id="content" class="body">
+    <h1>Tags for {{ SITENAME }}</h1>
+    <ul>
+    {% for tag, articles in tags|sort %}
+        <li><a href="{{ SITEURL }}/{{ tag.url }}">{{ tag }}</a> ({{ articles|count }})</li>
+    {% endfor %}
+    </ul>
+</section>
+
+{% endblock %}
diff --git a/website/themes/notmyidea/templates/translations.html b/website/themes/notmyidea/templates/translations.html
new file mode 100644
index 0000000000000000000000000000000000000000..7894bb07194c57c3debc2559d2948db79963020a
--- /dev/null
+++ b/website/themes/notmyidea/templates/translations.html
@@ -0,0 +1,8 @@
+{% macro translations_for(article) %}
+{% if article.translations %}
+Translations:
+    {% for translation in article.translations %}
+        <a href="{{ SITEURL }}/{{ translation.url }}">{{ translation.lang }}</a>
+    {% endfor %}
+{% endif %}
+{% endmacro %}
diff --git a/website/themes/notmyidea/templates/twitter.html b/website/themes/notmyidea/templates/twitter.html
new file mode 100644
index 0000000000000000000000000000000000000000..bf78c32dc3043523e9774a90f9cf8e76d218cb9c
--- /dev/null
+++ b/website/themes/notmyidea/templates/twitter.html
@@ -0,0 +1,3 @@
+{% if TWITTER_USERNAME %}
+<a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-via="{{TWITTER_USERNAME}}">Tweet</a><script type="text/javascript" src="https://platform.twitter.com/widgets.js"></script>
+{% endif %}