diff --git a/.git/COMMIT_EDITMSG b/.git/COMMIT_EDITMSG
deleted file mode 100644
--- a/.git/COMMIT_EDITMSG
+++ /dev/null
@@ -1,1 +0,0 @@
-Fix URL parsing to work with empty sections
diff --git a/.git/FETCH_HEAD b/.git/FETCH_HEAD
--- a/.git/FETCH_HEAD
+++ b/.git/FETCH_HEAD
@@ -1,2 +1,2 @@
-85b4c8d2256c11c570cacf64895353c0b9bd374f		branch 'master' of github.com:Hamcha/ketchup
-4c2353910734c89633d869f0ffccf8f565c93221	not-for-merge	branch 'gh-pages' of github.com:Hamcha/ketchup
+26aa433ce02a16e4f0887189d56ca66cc0fab283		branch 'master' of github.com:hamcha/ketchup
+4c2353910734c89633d869f0ffccf8f565c93221	not-for-merge	branch 'gh-pages' of github.com:hamcha/ketchup
diff --git a/.git/ORIG_HEAD b/.git/ORIG_HEAD
--- a/.git/ORIG_HEAD
+++ b/.git/ORIG_HEAD
@@ -1,1 +1,1 @@
-2382296bb15427910f85a9a4a5be39677a6d9005
+fcf776ea249603cba21a7e735ac877482693b3e1
diff --git a/.git/config b/.git/config
--- a/.git/config
+++ b/.git/config
@@ -4,7 +4,7 @@
 	bare = false
 	logallrefupdates = true
 [remote "origin"]
-	url = git@github.com:Hamcha/ketchup.git
+	url = git@github.com:hamcha/ketchup.git
 	fetch = +refs/heads/*:refs/remotes/origin/*
 [branch "master"]
 	remote = origin
diff --git a/.git/hooks/pre-push.sample b/.git/hooks/pre-push.sample
--- a/.git/hooks/pre-push.sample
+++ b/.git/hooks/pre-push.sample
@@ -45,7 +45,7 @@
 		commit=`git rev-list -n 1 --grep '^WIP' "$range"`
 		if [ -n "$commit" ]
 		then
-			echo "Found WIP commit in $local_ref, not pushing"
+			echo >&2 "Found WIP commit in $local_ref, not pushing"
 			exit 1
 		fi
 	fi
diff --git a/.git/index b/.git/index
Binary files a/.git/index and b/.git/index differ
diff --git a/.git/logs/HEAD b/.git/logs/HEAD
--- a/.git/logs/HEAD
+++ b/.git/logs/HEAD
@@ -1,39 +1,2 @@
-0000000000000000000000000000000000000000 c1ef5202b4e0351ba9c95229c0edf7dfbfb9bb33 Hamcha <zikyky@gmail.com> 1400868061 +0200	commit (initial): Base commit (most code from httpd)
-c1ef5202b4e0351ba9c95229c0edf7dfbfb9bb33 b197449e22aa6e00dcbb765294c13b957ad35207 Hamcha <zikyky@gmail.com> 1400868225 +0200	commit: Took some useless stuff out
-b197449e22aa6e00dcbb765294c13b957ad35207 622888f76a4bd37398710e1590463719c2129297 Hamcha <zikyky@gmail.com> 1400868258 +0200	commit: .gitignore to avoid commiting binaries or object files
-622888f76a4bd37398710e1590463719c2129297 d752cbde2090cf51b382e0060e0d13a90ef9dfa8 Hamcha <zikyky@gmail.com> 1400871180 +0200	commit: Basic routing should work
-d752cbde2090cf51b382e0060e0d13a90ef9dfa8 708b4d9119f776f28cc85a2a0f58b4bf1c1e7b43 Hamcha <zikyky@gmail.com> 1400871591 +0200	commit: Added types
-708b4d9119f776f28cc85a2a0f58b4bf1c1e7b43 722f61d1774f7fbd456a5ab611c54408e61f2cc6 Hamcha <zikyky@gmail.com> 1400872235 +0200	commit: Replaced incorrect 400 errors with 404 ones
-722f61d1774f7fbd456a5ab611c54408e61f2cc6 1093f2858a4572a7a141c96f251f273da4d55c89 Hamcha <zikyky@gmail.com> 1400884141 +0200	commit: Removed some oleg sauce
-1093f2858a4572a7a141c96f251f273da4d55c89 cf34a7265591f7c3f2d241bd7a554e96c85c68d5 Hamcha <zikyky@gmail.com> 1400935032 +0200	commit: Hackage stuff
-cf34a7265591f7c3f2d241bd7a554e96c85c68d5 6dd1040ce0fbc93348725498c912f0e19175d433 Hamcha <zikyky@gmail.com> 1400936077 +0200	commit: README
-6dd1040ce0fbc93348725498c912f0e19175d433 691816444999b3c2b424bdcef7eeb977fa8b18a5 Hamcha <zikyky@gmail.com> 1400953254 +0200	commit: Chunked encoding
-691816444999b3c2b424bdcef7eeb977fa8b18a5 ab41fa19ef0fbeb0088d8f325b1dc4280cbe9817 Hamcha <zikyky@gmail.com> 1400953623 +0200	commit: Forgot to make it visible
-ab41fa19ef0fbeb0088d8f325b1dc4280cbe9817 2e95147d7a2c86bb224527a5624c118b53f9c736 Hamcha <zikyky@gmail.com> 1400960297 +0200	commit: Removed SERVER header and set to 0.1.1
-2e95147d7a2c86bb224527a5624c118b53f9c736 718178fa1b3fc34b7d7d961792c09b4b7b531b3e Hamcha <zikyky@gmail.com> 1401303609 +0200	pull: Fast-forward
-718178fa1b3fc34b7d7d961792c09b4b7b531b3e b473be4e130f0ee35eb42d4037b2c99ee5003326 Hamcha <zikyky@gmail.com> 1401319907 +0200	commit: Ketchup has been Haddock'ed
-b473be4e130f0ee35eb42d4037b2c99ee5003326 c09136db3f6d1b79503253d341373405dd2f0e13 Hamcha <zikyky@gmail.com> 1401541834 +0200	commit: Switch to PCRE regexps
-c09136db3f6d1b79503253d341373405dd2f0e13 a06d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3 Hamcha <zikyky@gmail.com> 1401998815 +0200	pull: Fast-forward
-a06d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3 a8f041ca842f9d4b30406cf727910b74b3cc92d6 Hamcha <zikyky@gmail.com> 1402149852 +0200	commit: 0.2.2 - POST DATA
-a8f041ca842f9d4b30406cf727910b74b3cc92d6 464d078f996682b5330d9821891c67f6e58c303f Hamcha <zikyky@gmail.com> 1402151933 +0200	commit: Prettier docs
-464d078f996682b5330d9821891c67f6e58c303f a71ae79e4cf33baeecab2eeecf21ae31d35dd99f Hamcha <zikyky@gmail.com> 1402152719 +0200	commit: Tree shaking depenencies
-a71ae79e4cf33baeecab2eeecf21ae31d35dd99f 0ef1467fc037c2b698808c4f8670b06f437a44c5 Hamcha <zikyky@gmail.com> 1402152846 +0200	commit: Updated readme
-0ef1467fc037c2b698808c4f8670b06f437a44c5 b83c2375bba608232746064adfdb067cf57e5d80 Hamcha <zikyky@gmail.com> 1402175260 +0200	commit: Static doesn't depend on Routing anymore
-b83c2375bba608232746064adfdb067cf57e5d80 4ad51f9dc87b6aa48cb614030521d957b8498622 Hamcha <zikyky@gmail.com> 1403296411 +0200	commit: Fixed chunked encoding not working
-4ad51f9dc87b6aa48cb614030521d957b8498622 f61d5b2caadecbdcf54d2d0ad7b131ca2adcdc28 Hamcha <zikyky@gmail.com> 1404003509 +0200	commit: Version bump + GenDoc script
-f61d5b2caadecbdcf54d2d0ad7b131ca2adcdc28 139041d9f25f891c340cc0b858838f94306c9b93 Hamcha <zikyky@gmail.com> 1404078079 +0200	commit: So long Data.Map (and "containers" dependency)
-139041d9f25f891c340cc0b858838f94306c9b93 0f03ed98a2eba1beb8db11eb86edb34b2321a261 Hamcha <zikyky@gmail.com> 1404079631 +0200	commit: Basic auth is in!
-0f03ed98a2eba1beb8db11eb86edb34b2321a261 0fd36c65d057f7ce244a4e9a335d698f075530e6 Hamcha <zikyky@gmail.com> 1404079677 +0200	commit: Version bump
-0fd36c65d057f7ce244a4e9a335d698f075530e6 694dea2e0fc5c15b1ef710cee6f953b1afb623bd Hamcha <zikyky@gmail.com> 1404079963 +0200	commit: Promote Auth :D
-694dea2e0fc5c15b1ef710cee6f953b1afb623bd 695dee0b1313795711418347aedd65f5bcbca02f Hamcha <zikyky@gmail.com> 1407086956 +0200	commit: Version bump for cabal
-695dee0b1313795711418347aedd65f5bcbca02f 83ac9915be5493cf66f1f96de88b5edce6c39929 Hamcha <zikyky@gmail.com> 1407714950 +0200	commit: Doesn't work, but it's a start, will work on it tomorrow
-83ac9915be5493cf66f1f96de88b5edce6c39929 85b4c8d2256c11c570cacf64895353c0b9bd374f Hamcha <zikyky@gmail.com> 1407715002 +0200	commit: Remove unneded comments
-85b4c8d2256c11c570cacf64895353c0b9bd374f 9c007b2a800ccd64ea6589e3aaf436dd386c5879 Hamcha <zikyky@gmail.com> 1411050080 +0200	commit: Routing rewritten, now Regexp(tm) free
-9c007b2a800ccd64ea6589e3aaf436dd386c5879 c91a524dd7612f6b6b1a10132e0315ee38c4e7ac Hamcha <zikyky@gmail.com> 1411050528 +0200	commit: Take "Regexp" out of docs
-c91a524dd7612f6b6b1a10132e0315ee38c4e7ac 2382296bb15427910f85a9a4a5be39677a6d9005 Hamcha <zikyky@gmail.com> 1411050630 +0200	commit: Ehm
-2382296bb15427910f85a9a4a5be39677a6d9005 2382296bb15427910f85a9a4a5be39677a6d9005 Hamcha <zikyky@gmail.com> 1411050635 +0200	rebase -i (start): checkout refs/remotes/origin/master
-2382296bb15427910f85a9a4a5be39677a6d9005 2382296bb15427910f85a9a4a5be39677a6d9005 Hamcha <zikyky@gmail.com> 1411050635 +0200	rebase -i (finish): returning to refs/heads/master
-2382296bb15427910f85a9a4a5be39677a6d9005 c91a524dd7612f6b6b1a10132e0315ee38c4e7ac Hamcha <zikyky@gmail.com> 1411050647 +0200	rebase -i (start): checkout HEAD~2
-c91a524dd7612f6b6b1a10132e0315ee38c4e7ac 2ba3de09ad5a0b0b58d543705380a9a44a31ae2b Hamcha <zikyky@gmail.com> 1411050648 +0200	rebase -i (squash): Take "Regexp" out of docs
-2ba3de09ad5a0b0b58d543705380a9a44a31ae2b 2ba3de09ad5a0b0b58d543705380a9a44a31ae2b Hamcha <zikyky@gmail.com> 1411050651 +0200	rebase -i (finish): returning to refs/heads/master
-2ba3de09ad5a0b0b58d543705380a9a44a31ae2b cec17859d0a08acd01b9297297b32881bc4f7104 Hamcha <zikyky@gmail.com> 1411488463 +0200	commit: Fix URL parsing to work with empty sections
+0000000000000000000000000000000000000000 fcf776ea249603cba21a7e735ac877482693b3e1 Hamcha <zikyky@gmail.com> 1424005085 +0100	clone: from git@github.com:hamcha/ketchup.git
+fcf776ea249603cba21a7e735ac877482693b3e1 26aa433ce02a16e4f0887189d56ca66cc0fab283 Hamcha <zikyky@gmail.com> 1424005457 +0100	pull: Fast-forward
diff --git a/.git/logs/refs/heads/master b/.git/logs/refs/heads/master
--- a/.git/logs/refs/heads/master
+++ b/.git/logs/refs/heads/master
@@ -1,35 +1,2 @@
-0000000000000000000000000000000000000000 c1ef5202b4e0351ba9c95229c0edf7dfbfb9bb33 Hamcha <zikyky@gmail.com> 1400868061 +0200	commit (initial): Base commit (most code from httpd)
-c1ef5202b4e0351ba9c95229c0edf7dfbfb9bb33 b197449e22aa6e00dcbb765294c13b957ad35207 Hamcha <zikyky@gmail.com> 1400868225 +0200	commit: Took some useless stuff out
-b197449e22aa6e00dcbb765294c13b957ad35207 622888f76a4bd37398710e1590463719c2129297 Hamcha <zikyky@gmail.com> 1400868258 +0200	commit: .gitignore to avoid commiting binaries or object files
-622888f76a4bd37398710e1590463719c2129297 d752cbde2090cf51b382e0060e0d13a90ef9dfa8 Hamcha <zikyky@gmail.com> 1400871180 +0200	commit: Basic routing should work
-d752cbde2090cf51b382e0060e0d13a90ef9dfa8 708b4d9119f776f28cc85a2a0f58b4bf1c1e7b43 Hamcha <zikyky@gmail.com> 1400871591 +0200	commit: Added types
-708b4d9119f776f28cc85a2a0f58b4bf1c1e7b43 722f61d1774f7fbd456a5ab611c54408e61f2cc6 Hamcha <zikyky@gmail.com> 1400872235 +0200	commit: Replaced incorrect 400 errors with 404 ones
-722f61d1774f7fbd456a5ab611c54408e61f2cc6 1093f2858a4572a7a141c96f251f273da4d55c89 Hamcha <zikyky@gmail.com> 1400884141 +0200	commit: Removed some oleg sauce
-1093f2858a4572a7a141c96f251f273da4d55c89 cf34a7265591f7c3f2d241bd7a554e96c85c68d5 Hamcha <zikyky@gmail.com> 1400935032 +0200	commit: Hackage stuff
-cf34a7265591f7c3f2d241bd7a554e96c85c68d5 6dd1040ce0fbc93348725498c912f0e19175d433 Hamcha <zikyky@gmail.com> 1400936077 +0200	commit: README
-6dd1040ce0fbc93348725498c912f0e19175d433 691816444999b3c2b424bdcef7eeb977fa8b18a5 Hamcha <zikyky@gmail.com> 1400953254 +0200	commit: Chunked encoding
-691816444999b3c2b424bdcef7eeb977fa8b18a5 ab41fa19ef0fbeb0088d8f325b1dc4280cbe9817 Hamcha <zikyky@gmail.com> 1400953623 +0200	commit: Forgot to make it visible
-ab41fa19ef0fbeb0088d8f325b1dc4280cbe9817 2e95147d7a2c86bb224527a5624c118b53f9c736 Hamcha <zikyky@gmail.com> 1400960297 +0200	commit: Removed SERVER header and set to 0.1.1
-2e95147d7a2c86bb224527a5624c118b53f9c736 718178fa1b3fc34b7d7d961792c09b4b7b531b3e Hamcha <zikyky@gmail.com> 1401303609 +0200	pull: Fast-forward
-718178fa1b3fc34b7d7d961792c09b4b7b531b3e b473be4e130f0ee35eb42d4037b2c99ee5003326 Hamcha <zikyky@gmail.com> 1401319907 +0200	commit: Ketchup has been Haddock'ed
-b473be4e130f0ee35eb42d4037b2c99ee5003326 c09136db3f6d1b79503253d341373405dd2f0e13 Hamcha <zikyky@gmail.com> 1401541834 +0200	commit: Switch to PCRE regexps
-c09136db3f6d1b79503253d341373405dd2f0e13 a06d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3 Hamcha <zikyky@gmail.com> 1401998815 +0200	pull: Fast-forward
-a06d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3 a8f041ca842f9d4b30406cf727910b74b3cc92d6 Hamcha <zikyky@gmail.com> 1402149852 +0200	commit: 0.2.2 - POST DATA
-a8f041ca842f9d4b30406cf727910b74b3cc92d6 464d078f996682b5330d9821891c67f6e58c303f Hamcha <zikyky@gmail.com> 1402151933 +0200	commit: Prettier docs
-464d078f996682b5330d9821891c67f6e58c303f a71ae79e4cf33baeecab2eeecf21ae31d35dd99f Hamcha <zikyky@gmail.com> 1402152719 +0200	commit: Tree shaking depenencies
-a71ae79e4cf33baeecab2eeecf21ae31d35dd99f 0ef1467fc037c2b698808c4f8670b06f437a44c5 Hamcha <zikyky@gmail.com> 1402152846 +0200	commit: Updated readme
-0ef1467fc037c2b698808c4f8670b06f437a44c5 b83c2375bba608232746064adfdb067cf57e5d80 Hamcha <zikyky@gmail.com> 1402175260 +0200	commit: Static doesn't depend on Routing anymore
-b83c2375bba608232746064adfdb067cf57e5d80 4ad51f9dc87b6aa48cb614030521d957b8498622 Hamcha <zikyky@gmail.com> 1403296411 +0200	commit: Fixed chunked encoding not working
-4ad51f9dc87b6aa48cb614030521d957b8498622 f61d5b2caadecbdcf54d2d0ad7b131ca2adcdc28 Hamcha <zikyky@gmail.com> 1404003509 +0200	commit: Version bump + GenDoc script
-f61d5b2caadecbdcf54d2d0ad7b131ca2adcdc28 139041d9f25f891c340cc0b858838f94306c9b93 Hamcha <zikyky@gmail.com> 1404078079 +0200	commit: So long Data.Map (and "containers" dependency)
-139041d9f25f891c340cc0b858838f94306c9b93 0f03ed98a2eba1beb8db11eb86edb34b2321a261 Hamcha <zikyky@gmail.com> 1404079631 +0200	commit: Basic auth is in!
-0f03ed98a2eba1beb8db11eb86edb34b2321a261 0fd36c65d057f7ce244a4e9a335d698f075530e6 Hamcha <zikyky@gmail.com> 1404079677 +0200	commit: Version bump
-0fd36c65d057f7ce244a4e9a335d698f075530e6 694dea2e0fc5c15b1ef710cee6f953b1afb623bd Hamcha <zikyky@gmail.com> 1404079963 +0200	commit: Promote Auth :D
-694dea2e0fc5c15b1ef710cee6f953b1afb623bd 695dee0b1313795711418347aedd65f5bcbca02f Hamcha <zikyky@gmail.com> 1407086956 +0200	commit: Version bump for cabal
-695dee0b1313795711418347aedd65f5bcbca02f 83ac9915be5493cf66f1f96de88b5edce6c39929 Hamcha <zikyky@gmail.com> 1407714950 +0200	commit: Doesn't work, but it's a start, will work on it tomorrow
-83ac9915be5493cf66f1f96de88b5edce6c39929 85b4c8d2256c11c570cacf64895353c0b9bd374f Hamcha <zikyky@gmail.com> 1407715002 +0200	commit: Remove unneded comments
-85b4c8d2256c11c570cacf64895353c0b9bd374f 9c007b2a800ccd64ea6589e3aaf436dd386c5879 Hamcha <zikyky@gmail.com> 1411050080 +0200	commit: Routing rewritten, now Regexp(tm) free
-9c007b2a800ccd64ea6589e3aaf436dd386c5879 c91a524dd7612f6b6b1a10132e0315ee38c4e7ac Hamcha <zikyky@gmail.com> 1411050528 +0200	commit: Take "Regexp" out of docs
-c91a524dd7612f6b6b1a10132e0315ee38c4e7ac 2382296bb15427910f85a9a4a5be39677a6d9005 Hamcha <zikyky@gmail.com> 1411050630 +0200	commit: Ehm
-2382296bb15427910f85a9a4a5be39677a6d9005 2ba3de09ad5a0b0b58d543705380a9a44a31ae2b Hamcha <zikyky@gmail.com> 1411050651 +0200	rebase -i (finish): refs/heads/master onto c91a524dd7612f6b6b1a10132e0315ee38c4e7ac
-2ba3de09ad5a0b0b58d543705380a9a44a31ae2b cec17859d0a08acd01b9297297b32881bc4f7104 Hamcha <zikyky@gmail.com> 1411488463 +0200	commit: Fix URL parsing to work with empty sections
+0000000000000000000000000000000000000000 fcf776ea249603cba21a7e735ac877482693b3e1 Hamcha <zikyky@gmail.com> 1424005085 +0100	clone: from git@github.com:hamcha/ketchup.git
+fcf776ea249603cba21a7e735ac877482693b3e1 26aa433ce02a16e4f0887189d56ca66cc0fab283 Hamcha <zikyky@gmail.com> 1424005457 +0100	pull: Fast-forward
diff --git a/.git/logs/refs/remotes/origin/HEAD b/.git/logs/refs/remotes/origin/HEAD
new file mode 100644
--- /dev/null
+++ b/.git/logs/refs/remotes/origin/HEAD
@@ -0,0 +1,1 @@
+0000000000000000000000000000000000000000 fcf776ea249603cba21a7e735ac877482693b3e1 Hamcha <zikyky@gmail.com> 1424005085 +0100	clone: from git@github.com:hamcha/ketchup.git
diff --git a/.git/logs/refs/remotes/origin/gh-pages b/.git/logs/refs/remotes/origin/gh-pages
deleted file mode 100644
--- a/.git/logs/refs/remotes/origin/gh-pages
+++ /dev/null
@@ -1,2 +0,0 @@
-0000000000000000000000000000000000000000 4ac44b6241517d43310da25b086e175b3b9c0b49 Hamcha <zikyky@gmail.com> 1402364070 +0200	pull: storing head
-4ac44b6241517d43310da25b086e175b3b9c0b49 4c2353910734c89633d869f0ffccf8f565c93221 Hamcha <zikyky@gmail.com> 1411044679 +0200	pull: fast-forward
diff --git a/.git/logs/refs/remotes/origin/master b/.git/logs/refs/remotes/origin/master
--- a/.git/logs/refs/remotes/origin/master
+++ b/.git/logs/refs/remotes/origin/master
@@ -1,31 +1,1 @@
-0000000000000000000000000000000000000000 c1ef5202b4e0351ba9c95229c0edf7dfbfb9bb33 Hamcha <zikyky@gmail.com> 1400868072 +0200	update by push
-c1ef5202b4e0351ba9c95229c0edf7dfbfb9bb33 622888f76a4bd37398710e1590463719c2129297 Hamcha <zikyky@gmail.com> 1400868261 +0200	update by push
-622888f76a4bd37398710e1590463719c2129297 d752cbde2090cf51b382e0060e0d13a90ef9dfa8 Hamcha <zikyky@gmail.com> 1400871184 +0200	update by push
-d752cbde2090cf51b382e0060e0d13a90ef9dfa8 708b4d9119f776f28cc85a2a0f58b4bf1c1e7b43 Hamcha <zikyky@gmail.com> 1400871595 +0200	update by push
-708b4d9119f776f28cc85a2a0f58b4bf1c1e7b43 722f61d1774f7fbd456a5ab611c54408e61f2cc6 Hamcha <zikyky@gmail.com> 1400872238 +0200	update by push
-722f61d1774f7fbd456a5ab611c54408e61f2cc6 1093f2858a4572a7a141c96f251f273da4d55c89 Hamcha <zikyky@gmail.com> 1400884145 +0200	update by push
-1093f2858a4572a7a141c96f251f273da4d55c89 cf34a7265591f7c3f2d241bd7a554e96c85c68d5 Hamcha <zikyky@gmail.com> 1400935037 +0200	update by push
-cf34a7265591f7c3f2d241bd7a554e96c85c68d5 6dd1040ce0fbc93348725498c912f0e19175d433 Hamcha <zikyky@gmail.com> 1400936080 +0200	update by push
-6dd1040ce0fbc93348725498c912f0e19175d433 691816444999b3c2b424bdcef7eeb977fa8b18a5 Hamcha <zikyky@gmail.com> 1400953258 +0200	update by push
-691816444999b3c2b424bdcef7eeb977fa8b18a5 ab41fa19ef0fbeb0088d8f325b1dc4280cbe9817 Hamcha <zikyky@gmail.com> 1400953627 +0200	update by push
-ab41fa19ef0fbeb0088d8f325b1dc4280cbe9817 2e95147d7a2c86bb224527a5624c118b53f9c736 Hamcha <zikyky@gmail.com> 1400960301 +0200	update by push
-2e95147d7a2c86bb224527a5624c118b53f9c736 718178fa1b3fc34b7d7d961792c09b4b7b531b3e Hamcha <zikyky@gmail.com> 1401303609 +0200	pull: fast-forward
-718178fa1b3fc34b7d7d961792c09b4b7b531b3e b473be4e130f0ee35eb42d4037b2c99ee5003326 Hamcha <zikyky@gmail.com> 1401319911 +0200	update by push
-b473be4e130f0ee35eb42d4037b2c99ee5003326 c09136db3f6d1b79503253d341373405dd2f0e13 Hamcha <zikyky@gmail.com> 1401541838 +0200	update by push
-c09136db3f6d1b79503253d341373405dd2f0e13 a06d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3 Hamcha <zikyky@gmail.com> 1401998815 +0200	pull: fast-forward
-a06d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3 a8f041ca842f9d4b30406cf727910b74b3cc92d6 Hamcha <zikyky@gmail.com> 1402149856 +0200	update by push
-a8f041ca842f9d4b30406cf727910b74b3cc92d6 464d078f996682b5330d9821891c67f6e58c303f Hamcha <zikyky@gmail.com> 1402151936 +0200	update by push
-464d078f996682b5330d9821891c67f6e58c303f a71ae79e4cf33baeecab2eeecf21ae31d35dd99f Hamcha <zikyky@gmail.com> 1402152722 +0200	update by push
-a71ae79e4cf33baeecab2eeecf21ae31d35dd99f 0ef1467fc037c2b698808c4f8670b06f437a44c5 Hamcha <zikyky@gmail.com> 1402152850 +0200	update by push
-0ef1467fc037c2b698808c4f8670b06f437a44c5 b83c2375bba608232746064adfdb067cf57e5d80 Hamcha <zikyky@gmail.com> 1402175263 +0200	update by push
-b83c2375bba608232746064adfdb067cf57e5d80 4ad51f9dc87b6aa48cb614030521d957b8498622 Hamcha <zikyky@gmail.com> 1403296415 +0200	update by push
-4ad51f9dc87b6aa48cb614030521d957b8498622 f61d5b2caadecbdcf54d2d0ad7b131ca2adcdc28 Hamcha <zikyky@gmail.com> 1404003524 +0200	update by push
-f61d5b2caadecbdcf54d2d0ad7b131ca2adcdc28 0fd36c65d057f7ce244a4e9a335d698f075530e6 Hamcha <zikyky@gmail.com> 1404079685 +0200	update by push
-0fd36c65d057f7ce244a4e9a335d698f075530e6 694dea2e0fc5c15b1ef710cee6f953b1afb623bd Hamcha <zikyky@gmail.com> 1404079969 +0200	update by push
-694dea2e0fc5c15b1ef710cee6f953b1afb623bd 695dee0b1313795711418347aedd65f5bcbca02f Hamcha <zikyky@gmail.com> 1407086961 +0200	update by push
-695dee0b1313795711418347aedd65f5bcbca02f 83ac9915be5493cf66f1f96de88b5edce6c39929 Hamcha <zikyky@gmail.com> 1407714965 +0200	update by push
-83ac9915be5493cf66f1f96de88b5edce6c39929 85b4c8d2256c11c570cacf64895353c0b9bd374f Hamcha <zikyky@gmail.com> 1407715015 +0200	update by push
-85b4c8d2256c11c570cacf64895353c0b9bd374f 9c007b2a800ccd64ea6589e3aaf436dd386c5879 Hamcha <zikyky@gmail.com> 1411050084 +0200	update by push
-9c007b2a800ccd64ea6589e3aaf436dd386c5879 c91a524dd7612f6b6b1a10132e0315ee38c4e7ac Hamcha <zikyky@gmail.com> 1411050533 +0200	update by push
-c91a524dd7612f6b6b1a10132e0315ee38c4e7ac 2ba3de09ad5a0b0b58d543705380a9a44a31ae2b Hamcha <zikyky@gmail.com> 1411050656 +0200	update by push
-2ba3de09ad5a0b0b58d543705380a9a44a31ae2b cec17859d0a08acd01b9297297b32881bc4f7104 Hamcha <zikyky@gmail.com> 1411488467 +0200	update by push
+fcf776ea249603cba21a7e735ac877482693b3e1 26aa433ce02a16e4f0887189d56ca66cc0fab283 Hamcha <zikyky@gmail.com> 1424005457 +0100	pull: fast-forward
diff --git a/.git/objects/01/51025fe33749b1b065bfaaddeac482e2554582 b/.git/objects/01/51025fe33749b1b065bfaaddeac482e2554582
deleted file mode 100644
Binary files a/.git/objects/01/51025fe33749b1b065bfaaddeac482e2554582 and /dev/null differ
diff --git a/.git/objects/01/e3b6fea98c7d1cd0b8d7b76a5b558e82c6e182 b/.git/objects/01/e3b6fea98c7d1cd0b8d7b76a5b558e82c6e182
deleted file mode 100644
Binary files a/.git/objects/01/e3b6fea98c7d1cd0b8d7b76a5b558e82c6e182 and /dev/null differ
diff --git a/.git/objects/02/229886a2c1f7622014655936cde900885e9810 b/.git/objects/02/229886a2c1f7622014655936cde900885e9810
deleted file mode 100644
Binary files a/.git/objects/02/229886a2c1f7622014655936cde900885e9810 and /dev/null differ
diff --git a/.git/objects/02/ffa07f6990f74dafd8c9ce6d8fa39b0976d598 b/.git/objects/02/ffa07f6990f74dafd8c9ce6d8fa39b0976d598
deleted file mode 100644
Binary files a/.git/objects/02/ffa07f6990f74dafd8c9ce6d8fa39b0976d598 and /dev/null differ
diff --git a/.git/objects/04/27491eaa020186e459934ed69cdb7d808501cd b/.git/objects/04/27491eaa020186e459934ed69cdb7d808501cd
deleted file mode 100644
--- a/.git/objects/04/27491eaa020186e459934ed69cdb7d808501cd
+++ /dev/null
@@ -1,4 +0,0 @@
-xßOÛ0Ç÷Ì_aü0à!ñJ4ÖÄ+L Á@´M×1M¨k{±Óö¿ïl(Ý&M}jz¾ûÜÝ×çI=B½þlûørX|¿:AJtuûñülpBÈ×þãâ};-.ÎQ/})[»Z+&	9ù®3Ïçé¼êfLk²ð¬î>·®Ä4ùS©lþJïðð0{WÁJMcP¥3øÑÖ³µrB¹¤XÿrìÄÂO ^±Æ
-ß÷¹ÚIA3ÒýÊZMPÕk.J¹µ5BæØº¥¶Âaä C!:Ç>$`-ojãm84ÃÊRóIÒºZ¦[~d3}¡-¿hÖEÿÃlûnx|TÝmÍkUêyªÔ¬D9zh÷÷v÷ÐOÃÆâì»{_-BîïéÖKUérI³²¡ºÌ±a|Q?ÔÔJÄ%³p'^(>zËT¨dM3¸ #©Óî2lFtæ½V=AdÕûÌG¾¸VÒÌ<eæÌÄÔ¸%¦oÕÈAFp¡îâ»¢Úê²"µu`]bzÎ¡F`ù¾Dk
-]z\£eªÒLS!a¶¤dÆBH+.k>iÐã±7"è¿»Q;{~W­ÙäôÚèõ
-m+=ïô%¼ÊO"wÄä¨uU§ugJ½)³=Ëþ_ÀaÕª(×usì)¼Ðuh°m¼ÖðÔx­ÒÎº9öÆ1Wó5j4n½Wo×Áö2}¸²øfûõ?híÂ³4ôªÙå¢D£%zí[1;RÜm éiÜE>7ÆúU±öúéþÊ{"q'IóÃ¸
diff --git a/.git/objects/04/a409a115341e8d88fbe81afe993e824ed5a755 b/.git/objects/04/a409a115341e8d88fbe81afe993e824ed5a755
deleted file mode 100644
Binary files a/.git/objects/04/a409a115341e8d88fbe81afe993e824ed5a755 and /dev/null differ
diff --git a/.git/objects/04/c3e16687ed10eefe4dc64aeebdfb04d44ca2ca b/.git/objects/04/c3e16687ed10eefe4dc64aeebdfb04d44ca2ca
deleted file mode 100644
Binary files a/.git/objects/04/c3e16687ed10eefe4dc64aeebdfb04d44ca2ca and /dev/null differ
diff --git a/.git/objects/06/19b7137861d0ac245cd24cdf1784b15b517ce1 b/.git/objects/06/19b7137861d0ac245cd24cdf1784b15b517ce1
deleted file mode 100644
Binary files a/.git/objects/06/19b7137861d0ac245cd24cdf1784b15b517ce1 and /dev/null differ
diff --git a/.git/objects/0b/1732fd47a5b9008302f3cf2cc815b4c3fcbb03 b/.git/objects/0b/1732fd47a5b9008302f3cf2cc815b4c3fcbb03
deleted file mode 100644
Binary files a/.git/objects/0b/1732fd47a5b9008302f3cf2cc815b4c3fcbb03 and /dev/null differ
diff --git a/.git/objects/0c/06892b80ad9e05a48ed2f816c1bc9ef49ca69a b/.git/objects/0c/06892b80ad9e05a48ed2f816c1bc9ef49ca69a
deleted file mode 100644
Binary files a/.git/objects/0c/06892b80ad9e05a48ed2f816c1bc9ef49ca69a and /dev/null differ
diff --git a/.git/objects/0e/1f7af50ca1ce3a4849668a919daaa5e8735d43 b/.git/objects/0e/1f7af50ca1ce3a4849668a919daaa5e8735d43
deleted file mode 100644
Binary files a/.git/objects/0e/1f7af50ca1ce3a4849668a919daaa5e8735d43 and /dev/null differ
diff --git a/.git/objects/0e/f0bb4acb2a054328faea81aaa1b6ef08ab4324 b/.git/objects/0e/f0bb4acb2a054328faea81aaa1b6ef08ab4324
deleted file mode 100644
Binary files a/.git/objects/0e/f0bb4acb2a054328faea81aaa1b6ef08ab4324 and /dev/null differ
diff --git a/.git/objects/0e/f1467fc037c2b698808c4f8670b06f437a44c5 b/.git/objects/0e/f1467fc037c2b698808c4f8670b06f437a44c5
deleted file mode 100644
--- a/.git/objects/0e/f1467fc037c2b698808c4f8670b06f437a44c5
+++ /dev/null
@@ -1,2 +0,0 @@
-xA
-Â0E]çÙ$m".½d&¶hl	qQOo®àêÃ{<øi-eiÁZÑ<ôY¬]Íàc&bJnBAïPmTåÝ4@2q)[I$QDé±l=sYÑ§ÍkÕ7*i&}þ.Ïý¹_×)­å¢ÁôÑ 1ªÓ~­É_ºoLMXW!.¢~ÛD
diff --git a/.git/objects/0f/03ed98a2eba1beb8db11eb86edb34b2321a261 b/.git/objects/0f/03ed98a2eba1beb8db11eb86edb34b2321a261
deleted file mode 100644
Binary files a/.git/objects/0f/03ed98a2eba1beb8db11eb86edb34b2321a261 and /dev/null differ
diff --git a/.git/objects/0f/d36c65d057f7ce244a4e9a335d698f075530e6 b/.git/objects/0f/d36c65d057f7ce244a4e9a335d698f075530e6
deleted file mode 100644
--- a/.git/objects/0f/d36c65d057f7ce244a4e9a335d698f075530e6
+++ /dev/null
@@ -1,3 +0,0 @@
-xA
-Â0E]÷Ù$ÀýL2µ¥¦)5]ÔÓ+¸úðßðcÉyª
-NuQÆOäZh"jG{ÖFú1¡À0$qÐ­´ÉRJ} &`á ÄÆ2Â¶§½eSÊq$uýNó1÷W¦é}%ßXmµï÷ê¬Që®µíZ¿¤î)Ûg*â=¯Ý÷¥BÆ
diff --git a/.git/objects/0f/f8579fbd897417b0d6dad6e920f8882138a7c0 b/.git/objects/0f/f8579fbd897417b0d6dad6e920f8882138a7c0
deleted file mode 100644
Binary files a/.git/objects/0f/f8579fbd897417b0d6dad6e920f8882138a7c0 and /dev/null differ
diff --git a/.git/objects/10/93f2858a4572a7a141c96f251f273da4d55c89 b/.git/objects/10/93f2858a4572a7a141c96f251f273da4d55c89
deleted file mode 100644
Binary files a/.git/objects/10/93f2858a4572a7a141c96f251f273da4d55c89 and /dev/null differ
diff --git a/.git/objects/11/c683f96aaed8fc5cad03cb58c5d1a5cec5f501 b/.git/objects/11/c683f96aaed8fc5cad03cb58c5d1a5cec5f501
deleted file mode 100644
Binary files a/.git/objects/11/c683f96aaed8fc5cad03cb58c5d1a5cec5f501 and /dev/null differ
diff --git a/.git/objects/12/103f6ad6c8b32cef7a550d8d4d8307f656b9ec b/.git/objects/12/103f6ad6c8b32cef7a550d8d4d8307f656b9ec
deleted file mode 100644
Binary files a/.git/objects/12/103f6ad6c8b32cef7a550d8d4d8307f656b9ec and /dev/null differ
diff --git a/.git/objects/13/9041d9f25f891c340cc0b858838f94306c9b93 b/.git/objects/13/9041d9f25f891c340cc0b858838f94306c9b93
deleted file mode 100644
--- a/.git/objects/13/9041d9f25f891c340cc0b858838f94306c9b93
+++ /dev/null
@@ -1,2 +0,0 @@
-xÎANÃ0FaÖ>Å¨+Re'v¤
-±`Á'ø=3i£ÖvÌ"^í>éq+eéäÃðÐ7UÉÈhÙØ\ÌyÎP9ç¦1ÖNóèdÈQÎÂóÄÄì^ÃCXØ'~i} ðtú]®ûu;,·#·òJ.Ø`c²q¢gë­5÷z_ëú/d¾ÝZ=Ó;:XéUèÀ­v,U·ï®ZE+ïOæøP
diff --git a/.git/objects/15/9cebdfa4266754e9a10d880aa345087fe46ea3 b/.git/objects/15/9cebdfa4266754e9a10d880aa345087fe46ea3
deleted file mode 100644
Binary files a/.git/objects/15/9cebdfa4266754e9a10d880aa345087fe46ea3 and /dev/null differ
diff --git a/.git/objects/17/f0b2fcca6037579949bed0f62ed8508429855c b/.git/objects/17/f0b2fcca6037579949bed0f62ed8508429855c
deleted file mode 100644
Binary files a/.git/objects/17/f0b2fcca6037579949bed0f62ed8508429855c and /dev/null differ
diff --git a/.git/objects/19/29f404bd7463b75013763eac1c2fe1bbb03373 b/.git/objects/19/29f404bd7463b75013763eac1c2fe1bbb03373
deleted file mode 100644
Binary files a/.git/objects/19/29f404bd7463b75013763eac1c2fe1bbb03373 and /dev/null differ
diff --git a/.git/objects/1b/4e38d4a513de8e2fc27d9619999a1732330561 b/.git/objects/1b/4e38d4a513de8e2fc27d9619999a1732330561
deleted file mode 100644
Binary files a/.git/objects/1b/4e38d4a513de8e2fc27d9619999a1732330561 and /dev/null differ
diff --git a/.git/objects/1b/5e76a54f1a37ba3e0920ce750eb71528cf66c7 b/.git/objects/1b/5e76a54f1a37ba3e0920ce750eb71528cf66c7
deleted file mode 100644
Binary files a/.git/objects/1b/5e76a54f1a37ba3e0920ce750eb71528cf66c7 and /dev/null differ
diff --git a/.git/objects/1d/eac2fe1a42e35b994f1b855488f392c50f6a89 b/.git/objects/1d/eac2fe1a42e35b994f1b855488f392c50f6a89
deleted file mode 100644
Binary files a/.git/objects/1d/eac2fe1a42e35b994f1b855488f392c50f6a89 and /dev/null differ
diff --git a/.git/objects/1f/964c52d8194986ca6879905fbd25488f457fae b/.git/objects/1f/964c52d8194986ca6879905fbd25488f457fae
deleted file mode 100644
Binary files a/.git/objects/1f/964c52d8194986ca6879905fbd25488f457fae and /dev/null differ
diff --git a/.git/objects/1f/e6614e7ded45533c17b26bdb0d4d4f48cc0e79 b/.git/objects/1f/e6614e7ded45533c17b26bdb0d4d4f48cc0e79
deleted file mode 100644
Binary files a/.git/objects/1f/e6614e7ded45533c17b26bdb0d4d4f48cc0e79 and /dev/null differ
diff --git a/.git/objects/20/0e8a1d9e64883c4442f155f3695cb99ecdb392 b/.git/objects/20/0e8a1d9e64883c4442f155f3695cb99ecdb392
deleted file mode 100644
Binary files a/.git/objects/20/0e8a1d9e64883c4442f155f3695cb99ecdb392 and /dev/null differ
diff --git a/.git/objects/20/3fe722984873d04f9997788065406b008051c1 b/.git/objects/20/3fe722984873d04f9997788065406b008051c1
deleted file mode 100644
Binary files a/.git/objects/20/3fe722984873d04f9997788065406b008051c1 and /dev/null differ
diff --git a/.git/objects/23/82296bb15427910f85a9a4a5be39677a6d9005 b/.git/objects/23/82296bb15427910f85a9a4a5be39677a6d9005
deleted file mode 100644
Binary files a/.git/objects/23/82296bb15427910f85a9a4a5be39677a6d9005 and /dev/null differ
diff --git a/.git/objects/23/8fd86cd3c476d75eec0d7ae736adb96dd1cc60 b/.git/objects/23/8fd86cd3c476d75eec0d7ae736adb96dd1cc60
deleted file mode 100644
Binary files a/.git/objects/23/8fd86cd3c476d75eec0d7ae736adb96dd1cc60 and /dev/null differ
diff --git a/.git/objects/24/861f0a0b2585817bf3ae226d9bb42bad0e977b b/.git/objects/24/861f0a0b2585817bf3ae226d9bb42bad0e977b
deleted file mode 100644
Binary files a/.git/objects/24/861f0a0b2585817bf3ae226d9bb42bad0e977b and /dev/null differ
diff --git a/.git/objects/24/e1f1b0b0f51b252eebca5b168a4e17b4700a4c b/.git/objects/24/e1f1b0b0f51b252eebca5b168a4e17b4700a4c
deleted file mode 100644
Binary files a/.git/objects/24/e1f1b0b0f51b252eebca5b168a4e17b4700a4c and /dev/null differ
diff --git a/.git/objects/24/ee306a70ec71338f47f012e1a7ec5668e1851b b/.git/objects/24/ee306a70ec71338f47f012e1a7ec5668e1851b
deleted file mode 100644
Binary files a/.git/objects/24/ee306a70ec71338f47f012e1a7ec5668e1851b and /dev/null differ
diff --git a/.git/objects/26/aa433ce02a16e4f0887189d56ca66cc0fab283 b/.git/objects/26/aa433ce02a16e4f0887189d56ca66cc0fab283
new file mode 100644
--- /dev/null
+++ b/.git/objects/26/aa433ce02a16e4f0887189d56ca66cc0fab283
@@ -0,0 +1,1 @@
+xÎMjÃ0@á¬uÙZi4Öe×¹ÁXIL¬¸XJÁ9}}n|ðÊRëÔ1ú*J(!¤(q,É§sPdÍ×Ô^åÙAÆr°¾£D?pI1RÂýèÅ~õû²Â7×rg8½§ÇöØÎ·ÊÓüQú¬2­³Öìu_ëò/d.R_WYZmý³=¯PxùÝGÈ
diff --git a/.git/objects/26/e2203e22a0c92e9fffb7c8d859af54bf1aa943 b/.git/objects/26/e2203e22a0c92e9fffb7c8d859af54bf1aa943
deleted file mode 100644
Binary files a/.git/objects/26/e2203e22a0c92e9fffb7c8d859af54bf1aa943 and /dev/null differ
diff --git a/.git/objects/27/af847de0afe29dffa87ef0d755c84f830e4941 b/.git/objects/27/af847de0afe29dffa87ef0d755c84f830e4941
deleted file mode 100644
Binary files a/.git/objects/27/af847de0afe29dffa87ef0d755c84f830e4941 and /dev/null differ
diff --git a/.git/objects/29/3dd1b539d3932cada98422cd2a4d8117f693b3 b/.git/objects/29/3dd1b539d3932cada98422cd2a4d8117f693b3
deleted file mode 100644
Binary files a/.git/objects/29/3dd1b539d3932cada98422cd2a4d8117f693b3 and /dev/null differ
diff --git a/.git/objects/29/6daef4bb0fb9e15cdcf2ed42512b88b79ed514 b/.git/objects/29/6daef4bb0fb9e15cdcf2ed42512b88b79ed514
deleted file mode 100644
Binary files a/.git/objects/29/6daef4bb0fb9e15cdcf2ed42512b88b79ed514 and /dev/null differ
diff --git a/.git/objects/2b/9c68df7936d7398cd61b39686392d66ff8f1c1 b/.git/objects/2b/9c68df7936d7398cd61b39686392d66ff8f1c1
deleted file mode 100644
Binary files a/.git/objects/2b/9c68df7936d7398cd61b39686392d66ff8f1c1 and /dev/null differ
diff --git a/.git/objects/2b/a3de09ad5a0b0b58d543705380a9a44a31ae2b b/.git/objects/2b/a3de09ad5a0b0b58d543705380a9a44a31ae2b
deleted file mode 100644
--- a/.git/objects/2b/a3de09ad5a0b0b58d543705380a9a44a31ae2b
+++ /dev/null
@@ -1,1 +0,0 @@
-xÎ»j1a×zÁ­Á®+	.]¼Àh4k/kYËF8OmÒ»=ðq~nµNq»¾@0Æ£u£ËÖjYsJ6RL©ð0¨VytH8dC¹'|LbFgC)c¤èÙomU¾~§ù5¿Î×JÓýÈ­~vÛGo"Ð ªmÝÒº¼ûGêfý§\ågÙC{vh#Æßê¡ZE_
diff --git a/.git/objects/2c/373856c51ba9550fca9b27b974c3a63db3d7b9 b/.git/objects/2c/373856c51ba9550fca9b27b974c3a63db3d7b9
deleted file mode 100644
Binary files a/.git/objects/2c/373856c51ba9550fca9b27b974c3a63db3d7b9 and /dev/null differ
diff --git a/.git/objects/2c/a5438db72b33a2c171f3e9ae9b73bd59c2fd49 b/.git/objects/2c/a5438db72b33a2c171f3e9ae9b73bd59c2fd49
deleted file mode 100644
Binary files a/.git/objects/2c/a5438db72b33a2c171f3e9ae9b73bd59c2fd49 and /dev/null differ
diff --git a/.git/objects/2c/b647573d63d84667f629ea1e26e53bd3f16e44 b/.git/objects/2c/b647573d63d84667f629ea1e26e53bd3f16e44
deleted file mode 100644
Binary files a/.git/objects/2c/b647573d63d84667f629ea1e26e53bd3f16e44 and /dev/null differ
diff --git a/.git/objects/2d/15c14173d23f664b955cd24f51c82f5f09d91d b/.git/objects/2d/15c14173d23f664b955cd24f51c82f5f09d91d
deleted file mode 100644
--- a/.git/objects/2d/15c14173d23f664b955cd24f51c82f5f09d91d
+++ /dev/null
@@ -1,1 +0,0 @@
-xKÊÉOR0µdp÷t³°LädàdÈÀðïß¿¦¦&&&& r200ôô/àÞ¶iNÓ©ÎêèÂóçJ8¬^<W
diff --git a/.git/objects/2d/61778b316db7774bc73d9c80cfa8d76e7b7a97 b/.git/objects/2d/61778b316db7774bc73d9c80cfa8d76e7b7a97
deleted file mode 100644
Binary files a/.git/objects/2d/61778b316db7774bc73d9c80cfa8d76e7b7a97 and /dev/null differ
diff --git a/.git/objects/2d/d01b33323df8fd6ac686cc492d77822e040e1f b/.git/objects/2d/d01b33323df8fd6ac686cc492d77822e040e1f
deleted file mode 100644
Binary files a/.git/objects/2d/d01b33323df8fd6ac686cc492d77822e040e1f and /dev/null differ
diff --git a/.git/objects/2e/95147d7a2c86bb224527a5624c118b53f9c736 b/.git/objects/2e/95147d7a2c86bb224527a5624c118b53f9c736
deleted file mode 100644
Binary files a/.git/objects/2e/95147d7a2c86bb224527a5624c118b53f9c736 and /dev/null differ
diff --git a/.git/objects/31/0e7b443f14a92b46059c540620e2e3ec9eeecf b/.git/objects/31/0e7b443f14a92b46059c540620e2e3ec9eeecf
deleted file mode 100644
Binary files a/.git/objects/31/0e7b443f14a92b46059c540620e2e3ec9eeecf and /dev/null differ
diff --git a/.git/objects/32/4d07aa12666c2f03139f626361d1a810c45bc1 b/.git/objects/32/4d07aa12666c2f03139f626361d1a810c45bc1
deleted file mode 100644
--- a/.git/objects/32/4d07aa12666c2f03139f626361d1a810c45bc1
+++ /dev/null
@@ -1,1 +0,0 @@
-xÅRÁn1Í:»í¡AÑ	Ò(¨)4"ôPE²«zmÇ7 (ÿÞ1¹¥×ø`Ù~3OïÍóJÛ\|ÎO{§ð}4»ù9º¹Ñk+ª{òÙ8í½´[íVmUÔSYx*Ñcz¬jg=Ácºú]¡¯d¼#lºA¿U6.áÓW^×-Òº®?!rê?øÜFbIJ)b}¥Qàñô²ðm·o@£æèôn_ò)ÏááL\YCh¨·Ø9]x[ÊJªµXvL5­&ët<Ì?î¯­YKâæbÍ\è¿lL"â«!SG¯» l5,²CX6¼1OôUjJV6Þ×Iùq8©uof²F0¼±EÆÐQù<ûÁ¶Ã6¶§#2³Tr@ÀkvµA45ß§}míè@Ä^Ksð.z.ÙR^+jît¯ûIeûFÖæÖá©òoMß4ºâÌd±¸q.`òÏÿ°mé
diff --git a/.git/objects/32/997e49181fa65740bdf9434d98e8f146601d75 b/.git/objects/32/997e49181fa65740bdf9434d98e8f146601d75
deleted file mode 100644
Binary files a/.git/objects/32/997e49181fa65740bdf9434d98e8f146601d75 and /dev/null differ
diff --git a/.git/objects/33/126c8981c21f9755c7eaca90e81ca7d5d6fd62 b/.git/objects/33/126c8981c21f9755c7eaca90e81ca7d5d6fd62
deleted file mode 100644
Binary files a/.git/objects/33/126c8981c21f9755c7eaca90e81ca7d5d6fd62 and /dev/null differ
diff --git a/.git/objects/33/d1dadf72d9a1c6217c5a6c7992dcdaaa343742 b/.git/objects/33/d1dadf72d9a1c6217c5a6c7992dcdaaa343742
deleted file mode 100644
Binary files a/.git/objects/33/d1dadf72d9a1c6217c5a6c7992dcdaaa343742 and /dev/null differ
diff --git a/.git/objects/34/f107591ec1e00bba2a7bee5238bddbb4832bdb b/.git/objects/34/f107591ec1e00bba2a7bee5238bddbb4832bdb
deleted file mode 100644
Binary files a/.git/objects/34/f107591ec1e00bba2a7bee5238bddbb4832bdb and /dev/null differ
diff --git a/.git/objects/35/3e50d70c86a2ab186edac1c205561befde3dc7 b/.git/objects/35/3e50d70c86a2ab186edac1c205561befde3dc7
deleted file mode 100644
Binary files a/.git/objects/35/3e50d70c86a2ab186edac1c205561befde3dc7 and /dev/null differ
diff --git a/.git/objects/35/5acd3fb38dd6a8565e8652aca975260ad9ebe4 b/.git/objects/35/5acd3fb38dd6a8565e8652aca975260ad9ebe4
deleted file mode 100644
Binary files a/.git/objects/35/5acd3fb38dd6a8565e8652aca975260ad9ebe4 and /dev/null differ
diff --git a/.git/objects/35/cdbdae6aa4d9a87e4e3b7c1f21f1d2e90d691e b/.git/objects/35/cdbdae6aa4d9a87e4e3b7c1f21f1d2e90d691e
deleted file mode 100644
Binary files a/.git/objects/35/cdbdae6aa4d9a87e4e3b7c1f21f1d2e90d691e and /dev/null differ
diff --git a/.git/objects/36/d1bfaedb400023ee2b6ced7d3847183c454838 b/.git/objects/36/d1bfaedb400023ee2b6ced7d3847183c454838
deleted file mode 100644
--- a/.git/objects/36/d1bfaedb400023ee2b6ced7d3847183c454838
+++ /dev/null
@@ -1,2 +0,0 @@
-x¥TÁn@íxr"$¶RUU¨¸MR5vªÄU³.(K%¶[÷ß;kÔHå`ÏîÌ¼y3oà^È{¼~óêíÃ\M/¿]~ÄÍWB²wZEÉ÷'Ã_¶e[±rÁñëe§Þ­Ì5¹mË"ÛuÈ¶Å©T9Ñ*â>0Í¼ó­æ¨7zaÜ<aiáÔ~Ô¡p¥uñO¹^KõP)©a4ÂÜ7êàÜÉå×¾ÇÕlöå?æ<+ÎÄ+j7Ã[·ÈùtÇuÝm¬è¦°5\æº%MTíkûÈxL¥¾y ò4GÊ^2wï0ibFºÀÉUd<.µ¤\øp2B$ë ä)R¦XÏ3ÐR®ë(ã5ó?_©_ýføåÚ¼HÖ@i`çs)mY+ÍãT0ÍáW<hX8Å(ýéKu¤AÇiiTÁûM,xÈ¶¯¸ÜaßÇ¶°ÛÊiÍíRa>ö\lD»´6êY+tìKØýQß`Pè_ 3mÖÍùT6KE¤ÑÙ/z®ø	¿é7+Æ¿×÷óÿÇÚ×PÇ´x+%ãëÖí«Hh®à$RÃ3óò@»è6T>/üé9
-Ö¡vãôz^ÏmªØ-}4Jq7­®½§×©ÿ*ý¡X,
diff --git a/.git/objects/37/e7da68243123c206a7b9b03e982cd2e1ffde61 b/.git/objects/37/e7da68243123c206a7b9b03e982cd2e1ffde61
deleted file mode 100644
Binary files a/.git/objects/37/e7da68243123c206a7b9b03e982cd2e1ffde61 and /dev/null differ
diff --git a/.git/objects/38/b1abd98d5569fa06054273349167b45184cc6c b/.git/objects/38/b1abd98d5569fa06054273349167b45184cc6c
deleted file mode 100644
Binary files a/.git/objects/38/b1abd98d5569fa06054273349167b45184cc6c and /dev/null differ
diff --git a/.git/objects/39/7b16f4af94e0b04d7e6c7063332150ee9113e1 b/.git/objects/39/7b16f4af94e0b04d7e6c7063332150ee9113e1
deleted file mode 100644
Binary files a/.git/objects/39/7b16f4af94e0b04d7e6c7063332150ee9113e1 and /dev/null differ
diff --git a/.git/objects/3a/e244621eb9dd53cbcca1a8475acf7affae786d b/.git/objects/3a/e244621eb9dd53cbcca1a8475acf7affae786d
deleted file mode 100644
Binary files a/.git/objects/3a/e244621eb9dd53cbcca1a8475acf7affae786d and /dev/null differ
diff --git a/.git/objects/3b/4a30a35ea42471082f331a39f573fbc7782f85 b/.git/objects/3b/4a30a35ea42471082f331a39f573fbc7782f85
deleted file mode 100644
--- a/.git/objects/3b/4a30a35ea42471082f331a39f573fbc7782f85
+++ /dev/null
@@ -1,2 +0,0 @@
-x=Í
-Ã Çwà;ä\¥Çõmgk Õ¡+ìñ·õÿÇ/$`y.7Y°_<Þ¬±FïÕ»GBÓÆûYþVWèdyi°w4»G!\¬jrªÅZÔó0©SxÜ<Þ_Òä2Ls.r[#VXóS'9
diff --git a/.git/objects/3c/4e5274662ecf122b692a4b2d4b6054e6ecab6b b/.git/objects/3c/4e5274662ecf122b692a4b2d4b6054e6ecab6b
deleted file mode 100644
Binary files a/.git/objects/3c/4e5274662ecf122b692a4b2d4b6054e6ecab6b and /dev/null differ
diff --git a/.git/objects/3d/f33a565ba1673aeae361ffa0bdd75ad5aa87fb b/.git/objects/3d/f33a565ba1673aeae361ffa0bdd75ad5aa87fb
deleted file mode 100644
Binary files a/.git/objects/3d/f33a565ba1673aeae361ffa0bdd75ad5aa87fb and /dev/null differ
diff --git a/.git/objects/3e/acc9c75ba313c63d9d9be3616d7b8b9f452975 b/.git/objects/3e/acc9c75ba313c63d9d9be3616d7b8b9f452975
deleted file mode 100644
Binary files a/.git/objects/3e/acc9c75ba313c63d9d9be3616d7b8b9f452975 and /dev/null differ
diff --git a/.git/objects/3e/c999f52b623f8b354b6f9f7fdee90db24c3c72 b/.git/objects/3e/c999f52b623f8b354b6f9f7fdee90db24c3c72
deleted file mode 100644
--- a/.git/objects/3e/c999f52b623f8b354b6f9f7fdee90db24c3c72
+++ /dev/null
@@ -1,3 +0,0 @@
-x¥T[oÓ0æ¹RÿÃQ7©´xAP)H[Ù±nS×iH^s²XsâÌvh
-ßÎq2gM×Â$ò'çâïrì[!oáí»o^ýìÀéþÙñÕþñ!G%$0º4gwv¿ºn'Q!¾ %ELda(Üíx hÝó-ºæRx(à1Ç>1ÃÁºi0JzLÃh[òå6>nâÐ<Â1yôøáBo¡KußD`N±4Áï°.FC`bù°´QA\d3ÃeVý²{ÔÀ@pm@Æµô#S235	ésÐS¥$ ð¡ÀBn§C¸öF+íw)g÷h`ðN¦Ó­°ðÆUjµ°õáÛêÏçàù¾ÄãTDHV[=Õ:×7MUB,i*Ä>Yt&Í,~ueV,µÿpe5%¤¦
-¼BqñÁ©­ò©³§©#­Ö¶Ü]áÐÀÚ¼Èb©Þ¼Ã É!5ç7´kkÁm Õé¨-'Hûõï)¦*½P¦¹ A°Æagg~ðü+7	ÌdJÐ(Þ¦)Í«Eüxà,`YÂâI%°xÎ(©*è¬ºÈh2¯GAV=]­Êÿ	ÝJ	²ÚRïþ°ïzPêzÓ&Aøû9çÛÔomßÈ@n ÿºoÕ©8uÉjÜilz8õÕ´Úäâ8LOíµ°1öæð2i pÊ@ãíÃÊ;ÏÒÅKÄLoR×\ßî¥×ëíõzþªñÛÝ¤ûÈ0^ÍCÙ*ÙnV«ÿÛõ¸ã
diff --git a/.git/objects/3f/019d6c6041e82845c87d8f620f5f836fe5f910 b/.git/objects/3f/019d6c6041e82845c87d8f620f5f836fe5f910
new file mode 100644
Binary files /dev/null and b/.git/objects/3f/019d6c6041e82845c87d8f620f5f836fe5f910 differ
diff --git a/.git/objects/41/bb1c25a293d0754c3554f5a07a8a2a883b40d8 b/.git/objects/41/bb1c25a293d0754c3554f5a07a8a2a883b40d8
deleted file mode 100644
Binary files a/.git/objects/41/bb1c25a293d0754c3554f5a07a8a2a883b40d8 and /dev/null differ
diff --git a/.git/objects/41/c17d736e3d73852a7d08c691182692e793ab3f b/.git/objects/41/c17d736e3d73852a7d08c691182692e793ab3f
deleted file mode 100644
Binary files a/.git/objects/41/c17d736e3d73852a7d08c691182692e793ab3f and /dev/null differ
diff --git a/.git/objects/42/238709f16db39e5eaaf8841791e35d3c4484e3 b/.git/objects/42/238709f16db39e5eaaf8841791e35d3c4484e3
deleted file mode 100644
Binary files a/.git/objects/42/238709f16db39e5eaaf8841791e35d3c4484e3 and /dev/null differ
diff --git a/.git/objects/45/3bd93c26a9e271a06ba2646d2fed80284a3d7e b/.git/objects/45/3bd93c26a9e271a06ba2646d2fed80284a3d7e
deleted file mode 100644
Binary files a/.git/objects/45/3bd93c26a9e271a06ba2646d2fed80284a3d7e and /dev/null differ
diff --git a/.git/objects/45/fa42399476a801f23b96599909ab8939757cd4 b/.git/objects/45/fa42399476a801f23b96599909ab8939757cd4
deleted file mode 100644
Binary files a/.git/objects/45/fa42399476a801f23b96599909ab8939757cd4 and /dev/null differ
diff --git a/.git/objects/46/4d078f996682b5330d9821891c67f6e58c303f b/.git/objects/46/4d078f996682b5330d9821891c67f6e58c303f
deleted file mode 100644
Binary files a/.git/objects/46/4d078f996682b5330d9821891c67f6e58c303f and /dev/null differ
diff --git a/.git/objects/49/c47bca8a7edae0d0851b71284aa6b39a400cc4 b/.git/objects/49/c47bca8a7edae0d0851b71284aa6b39a400cc4
deleted file mode 100644
Binary files a/.git/objects/49/c47bca8a7edae0d0851b71284aa6b39a400cc4 and /dev/null differ
diff --git a/.git/objects/4a/021a8003bac4534e449b336f4a8e8711dff2e3 b/.git/objects/4a/021a8003bac4534e449b336f4a8e8711dff2e3
deleted file mode 100644
Binary files a/.git/objects/4a/021a8003bac4534e449b336f4a8e8711dff2e3 and /dev/null differ
diff --git a/.git/objects/4a/10a87d8c968f4d836bca3a08d2f44c05060fad b/.git/objects/4a/10a87d8c968f4d836bca3a08d2f44c05060fad
deleted file mode 100644
Binary files a/.git/objects/4a/10a87d8c968f4d836bca3a08d2f44c05060fad and /dev/null differ
diff --git a/.git/objects/4a/7482b12405ea3053e880a198094e00b4a10988 b/.git/objects/4a/7482b12405ea3053e880a198094e00b4a10988
deleted file mode 100644
Binary files a/.git/objects/4a/7482b12405ea3053e880a198094e00b4a10988 and /dev/null differ
diff --git a/.git/objects/4a/c44b6241517d43310da25b086e175b3b9c0b49 b/.git/objects/4a/c44b6241517d43310da25b086e175b3b9c0b49
deleted file mode 100644
Binary files a/.git/objects/4a/c44b6241517d43310da25b086e175b3b9c0b49 and /dev/null differ
diff --git a/.git/objects/4a/d51f9dc87b6aa48cb614030521d957b8498622 b/.git/objects/4a/d51f9dc87b6aa48cb614030521d957b8498622
deleted file mode 100644
--- a/.git/objects/4a/d51f9dc87b6aa48cb614030521d957b8498622
+++ /dev/null
@@ -1,2 +0,0 @@
-xAj!E³öµei«CÈjÈ5´¬drúx¬þçñ|îµdÌË8E@Lb­8ZRÊÆ8o2£Æ³Bóë¦¾â)m@
-Éø9òÖ¡³1o9¡ó¼-^PÅÇØû	±òáú[çñ|¿×X>_¹×7Ð­Îj$D5é¼6ä_ºÉÀû£3¥qÏ¥Ý¡õßý<fWcJ
diff --git a/.git/objects/4b/825dc642cb6eb9a060e54bf8d69288fbee4904 b/.git/objects/4b/825dc642cb6eb9a060e54bf8d69288fbee4904
deleted file mode 100644
Binary files a/.git/objects/4b/825dc642cb6eb9a060e54bf8d69288fbee4904 and /dev/null differ
diff --git a/.git/objects/4b/839965d93e9f73dc1f00fac60ce31619cf27bf b/.git/objects/4b/839965d93e9f73dc1f00fac60ce31619cf27bf
deleted file mode 100644
Binary files a/.git/objects/4b/839965d93e9f73dc1f00fac60ce31619cf27bf and /dev/null differ
diff --git a/.git/objects/4b/b6b3f484c6c64383b85aff399a1f385357e138 b/.git/objects/4b/b6b3f484c6c64383b85aff399a1f385357e138
deleted file mode 100644
Binary files a/.git/objects/4b/b6b3f484c6c64383b85aff399a1f385357e138 and /dev/null differ
diff --git a/.git/objects/4b/c44265a2bbd4697b8408ff44cfdaad4777b18b b/.git/objects/4b/c44265a2bbd4697b8408ff44cfdaad4777b18b
deleted file mode 100644
Binary files a/.git/objects/4b/c44265a2bbd4697b8408ff44cfdaad4777b18b and /dev/null differ
diff --git a/.git/objects/4c/2353910734c89633d869f0ffccf8f565c93221 b/.git/objects/4c/2353910734c89633d869f0ffccf8f565c93221
deleted file mode 100644
--- a/.git/objects/4c/2353910734c89633d869f0ffccf8f565c93221
+++ /dev/null
@@ -1,2 +0,0 @@
-xÎA
-1@Q×=Eö$MÇ¶ âÒxT´vëBOï\Áí_[­cOiÕçR@%R$ÝJæå2äANg$JÈçÄAÝ$syv`62±Kôeq¢²Õ³75áÀ1x'ï~k3¥êM`÷ïûçp­2>6Úê(`À#zX£GtK]Özù¹ÓdÒ5}Aov?¹C$
diff --git a/.git/objects/4f/6d438c143bd74eb0fea554c57583a51f92e890 b/.git/objects/4f/6d438c143bd74eb0fea554c57583a51f92e890
deleted file mode 100644
Binary files a/.git/objects/4f/6d438c143bd74eb0fea554c57583a51f92e890 and /dev/null differ
diff --git a/.git/objects/52/36d892553250d98e5b5b322321702f74559556 b/.git/objects/52/36d892553250d98e5b5b322321702f74559556
deleted file mode 100644
Binary files a/.git/objects/52/36d892553250d98e5b5b322321702f74559556 and /dev/null differ
diff --git a/.git/objects/54/0238ab17beeafc9cf736595a50f3e395b598f9 b/.git/objects/54/0238ab17beeafc9cf736595a50f3e395b598f9
new file mode 100644
Binary files /dev/null and b/.git/objects/54/0238ab17beeafc9cf736595a50f3e395b598f9 differ
diff --git a/.git/objects/55/61e9ab1a9d86b8fcecc70202d0263cb525a1ed b/.git/objects/55/61e9ab1a9d86b8fcecc70202d0263cb525a1ed
deleted file mode 100644
Binary files a/.git/objects/55/61e9ab1a9d86b8fcecc70202d0263cb525a1ed and /dev/null differ
diff --git a/.git/objects/55/99915d18d029056942c1193b62f0469dd55de8 b/.git/objects/55/99915d18d029056942c1193b62f0469dd55de8
deleted file mode 100644
Binary files a/.git/objects/55/99915d18d029056942c1193b62f0469dd55de8 and /dev/null differ
diff --git a/.git/objects/56/2c5d11641eeb9f7ae77cd0d177fd8c947ed1e9 b/.git/objects/56/2c5d11641eeb9f7ae77cd0d177fd8c947ed1e9
deleted file mode 100644
Binary files a/.git/objects/56/2c5d11641eeb9f7ae77cd0d177fd8c947ed1e9 and /dev/null differ
diff --git a/.git/objects/57/9bdddcdb0584c78cee8df569174d8e5174a28e b/.git/objects/57/9bdddcdb0584c78cee8df569174d8e5174a28e
deleted file mode 100644
Binary files a/.git/objects/57/9bdddcdb0584c78cee8df569174d8e5174a28e and /dev/null differ
diff --git a/.git/objects/58/4b0ea086479c87718b10715c5375a4715e6965 b/.git/objects/58/4b0ea086479c87718b10715c5375a4715e6965
deleted file mode 100644
Binary files a/.git/objects/58/4b0ea086479c87718b10715c5375a4715e6965 and /dev/null differ
diff --git a/.git/objects/5a/6881a3d40966a591bf4431aaae918faa3d3ac5 b/.git/objects/5a/6881a3d40966a591bf4431aaae918faa3d3ac5
deleted file mode 100644
--- a/.git/objects/5a/6881a3d40966a591bf4431aaae918faa3d3ac5
+++ /dev/null
@@ -1,3 +0,0 @@
-xuRQoÚ@Þs~E'$ÑiUUJ­´M®9§9qäÂÓmûïó](¡ñBÎþ>Ûßg?ió½/~Çgðx3¹ßÜàûZmD9%«ggñß(ZYi¯Hi^É©4j«?:ð£Å(RëÒXM%´ÊJ¸$á°.ÜæÂ^p0|ÇÂþ°3|£dT¤Fr÷SÌûD¥üzNJ»ÓôéÕØUòM­ñ4;Ý:Âur§,¦dìÚÒ +£7å¨EqjíqrQHÖÇgbÈ=s`*[ø¸5aTûWW0l¸Ìÿ?å@ÚÜ9Ú8È¬YG{ ÀÃ®ó®`f´Dyh¹>Hð	J_·ÏSS¤`Q»PYÅn{¤2Òÿ¥9¦«@=dÉ}©ª(E3ï
-&ÁuÌ½®±@eRá¼/ß£¶9³9L,
-épTå`<0ò'zøÜëÁ¢Ýº5aAñl[b«»XóÊZëQúrBþáñÞGÌD¥ÉÌ£1«ªãëÄ9e/éÂÌÖÂ+µ"8ÿt~°ÔÆB³!¬Ô+Íá-FÑa	'ÇÂÆ£Êjè)¼·au.<Úê ´(e[Â»v£ð#cñÌ÷Òæû&¾¨v¿­$iu T¢ëÀ5\ÚõMu<Iôx°QG
diff --git a/.git/objects/5b/b8bdb97c488abfbfcfe0925cd02d0db1df869d b/.git/objects/5b/b8bdb97c488abfbfcfe0925cd02d0db1df869d
deleted file mode 100644
Binary files a/.git/objects/5b/b8bdb97c488abfbfcfe0925cd02d0db1df869d and /dev/null differ
diff --git a/.git/objects/5c/7dd6782bd7103baeb041d69fd3e17410ab46dd b/.git/objects/5c/7dd6782bd7103baeb041d69fd3e17410ab46dd
deleted file mode 100644
Binary files a/.git/objects/5c/7dd6782bd7103baeb041d69fd3e17410ab46dd and /dev/null differ
diff --git a/.git/objects/5c/ad4e38d5d9795fd867fe17bdc34c18ac26dfc6 b/.git/objects/5c/ad4e38d5d9795fd867fe17bdc34c18ac26dfc6
deleted file mode 100644
Binary files a/.git/objects/5c/ad4e38d5d9795fd867fe17bdc34c18ac26dfc6 and /dev/null differ
diff --git a/.git/objects/5c/d6ac78a332a4565cc05200276028bb0ad7b381 b/.git/objects/5c/d6ac78a332a4565cc05200276028bb0ad7b381
deleted file mode 100644
Binary files a/.git/objects/5c/d6ac78a332a4565cc05200276028bb0ad7b381 and /dev/null differ
diff --git a/.git/objects/5e/48387ea9b3a9fa8fa903f54477534cf8d8dd62 b/.git/objects/5e/48387ea9b3a9fa8fa903f54477534cf8d8dd62
deleted file mode 100644
Binary files a/.git/objects/5e/48387ea9b3a9fa8fa903f54477534cf8d8dd62 and /dev/null differ
diff --git a/.git/objects/60/07e4f98c57a347a051cf7d7de71ca08fd85b8f b/.git/objects/60/07e4f98c57a347a051cf7d7de71ca08fd85b8f
deleted file mode 100644
Binary files a/.git/objects/60/07e4f98c57a347a051cf7d7de71ca08fd85b8f and /dev/null differ
diff --git a/.git/objects/60/c2748b7df2f5721d8c242094c744d7a777b56f b/.git/objects/60/c2748b7df2f5721d8c242094c744d7a777b56f
deleted file mode 100644
Binary files a/.git/objects/60/c2748b7df2f5721d8c242094c744d7a777b56f and /dev/null differ
diff --git a/.git/objects/62/25034f4b33110b1e1e8bb9938649989dcadc77 b/.git/objects/62/25034f4b33110b1e1e8bb9938649989dcadc77
deleted file mode 100644
Binary files a/.git/objects/62/25034f4b33110b1e1e8bb9938649989dcadc77 and /dev/null differ
diff --git a/.git/objects/62/2888f76a4bd37398710e1590463719c2129297 b/.git/objects/62/2888f76a4bd37398710e1590463719c2129297
deleted file mode 100644
--- a/.git/objects/62/2888f76a4bd37398710e1590463719c2129297
+++ /dev/null
@@ -1,2 +0,0 @@
-xMJ1F]çµêt~AÄ¥×¨TjzÊt$ñô6x·ï}<î­éë×§9DÏR}¸HäÂB³çàmMÁ§ÕÍù¤!û²äè\k V.%óìxYKöêê-FC_óÒ¼SãÁË^×ÇÛÖHo'îíB²>Á3ZDsÐ#mÊ¿$sÚtê¶÷!0;Ðw×
-OºoPt§¡r#¥á	g½ÉÝü|7Q,
diff --git a/.git/objects/63/3f2583dc912547dc4bbb06de8bd1a7c275fcf2 b/.git/objects/63/3f2583dc912547dc4bbb06de8bd1a7c275fcf2
deleted file mode 100644
Binary files a/.git/objects/63/3f2583dc912547dc4bbb06de8bd1a7c275fcf2 and /dev/null differ
diff --git a/.git/objects/63/50f4f119a8325852c5279f96ae5b0c34cce55f b/.git/objects/63/50f4f119a8325852c5279f96ae5b0c34cce55f
deleted file mode 100644
Binary files a/.git/objects/63/50f4f119a8325852c5279f96ae5b0c34cce55f and /dev/null differ
diff --git a/.git/objects/63/fea90271bdd5df9433756fd72126105cdbe5b7 b/.git/objects/63/fea90271bdd5df9433756fd72126105cdbe5b7
deleted file mode 100644
Binary files a/.git/objects/63/fea90271bdd5df9433756fd72126105cdbe5b7 and /dev/null differ
diff --git a/.git/objects/65/31a477b445bfd988c03147cd43c5a0e289b426 b/.git/objects/65/31a477b445bfd988c03147cd43c5a0e289b426
deleted file mode 100644
Binary files a/.git/objects/65/31a477b445bfd988c03147cd43c5a0e289b426 and /dev/null differ
diff --git a/.git/objects/66/5fba0e7ceccafda2b2a4e92e342ff2cbfe8247 b/.git/objects/66/5fba0e7ceccafda2b2a4e92e342ff2cbfe8247
deleted file mode 100644
--- a/.git/objects/66/5fba0e7ceccafda2b2a4e92e342ff2cbfe8247
+++ /dev/null
@@ -1,2 +0,0 @@
-x+)JMU041c040031QÐKÏ,ÉLÏË/Je`ú¿ >sÂwßõ7NËí_<³ìê PðN-IÎ(-`¼Æò¡EóÃÕ%óËz+¹³EHÚBÍñMÌNMËÌIeh|oz}³³»Èª¥%·øW~ËªI­HÌ-ÈIÕË(f0òe_%£Ï,<?)9ñâ
-#ÑÍ:
diff --git a/.git/objects/69/1816444999b3c2b424bdcef7eeb977fa8b18a5 b/.git/objects/69/1816444999b3c2b424bdcef7eeb977fa8b18a5
deleted file mode 100644
Binary files a/.git/objects/69/1816444999b3c2b424bdcef7eeb977fa8b18a5 and /dev/null differ
diff --git a/.git/objects/69/367db2a6835d21762b09eec97395dd0f1d503e b/.git/objects/69/367db2a6835d21762b09eec97395dd0f1d503e
deleted file mode 100644
Binary files a/.git/objects/69/367db2a6835d21762b09eec97395dd0f1d503e and /dev/null differ
diff --git a/.git/objects/69/4dea2e0fc5c15b1ef710cee6f953b1afb623bd b/.git/objects/69/4dea2e0fc5c15b1ef710cee6f953b1afb623bd
deleted file mode 100644
Binary files a/.git/objects/69/4dea2e0fc5c15b1ef710cee6f953b1afb623bd and /dev/null differ
diff --git a/.git/objects/69/5dee0b1313795711418347aedd65f5bcbca02f b/.git/objects/69/5dee0b1313795711418347aedd65f5bcbca02f
deleted file mode 100644
Binary files a/.git/objects/69/5dee0b1313795711418347aedd65f5bcbca02f and /dev/null differ
diff --git a/.git/objects/69/8a48637c6765d29ae84a3e63bf4e878af2ae6d b/.git/objects/69/8a48637c6765d29ae84a3e63bf4e878af2ae6d
deleted file mode 100644
--- a/.git/objects/69/8a48637c6765d29ae84a3e63bf4e878af2ae6d
+++ /dev/null
@@ -1,2 +0,0 @@
-xußOã0Çï¹5h¥µÇN:	!Äøy:mO¡qi´¬)L§ûßÏIµ­G_Û_;ö'~ÖæoÒ=¸=»»]_ÂýZmD9!«ª{éß(ZÙhßHyÙÔÙ©<ÁµÞK´EjYKðÚ­
-.l´"lËeç¥°G ¾ÐEíÃãu6_(5ÅÊ.«ÜHnî³fÝàQ-¿ÏHi÷9|ônìâË@6VKü¬á2»Ps2v±4è®ÆËå(¢4ìRTR£Zzp|£#HOabò?ÝL§øÚ #6,|$gÖNj×H¼è×=ÄÉú¢ÂhÊJÅW¨KC&TÖ|c-¨dÏ(ËMyÓÆ*ô´Q:Q!+ý//1_ÔmìÃºTSÕ¢÷t8Iùî*Þ§ÊäÂ!0)û;úAÒÀAáqLmà'eôÔwªlñéôÆJ>b­WÃÃCÇ½sSVNW5öúó%¿óSÒÎºS ]ó7¼ÞsÄB4üÜ³hjØgï*Î¨8¢,Ût¾©Òú ¿ñ>âj­¾lzñÐLGõ#Üº2Óá×¢í+ügFÆè¢±{mxºáñ\0·ÓµNÍyIL°[Ç5V/¼11ï5ñjÅÃ!ô²¬@­0GÀ	BíÖæîxÜJô¤ä\
diff --git a/.git/objects/6c/fe3c139d7fb98d3057452404339c790f2aa1d3 b/.git/objects/6c/fe3c139d7fb98d3057452404339c790f2aa1d3
deleted file mode 100644
Binary files a/.git/objects/6c/fe3c139d7fb98d3057452404339c790f2aa1d3 and /dev/null differ
diff --git a/.git/objects/6d/30f1c67e51b4d6acd23a7bddb933aef1cee5a8 b/.git/objects/6d/30f1c67e51b4d6acd23a7bddb933aef1cee5a8
deleted file mode 100644
Binary files a/.git/objects/6d/30f1c67e51b4d6acd23a7bddb933aef1cee5a8 and /dev/null differ
diff --git a/.git/objects/6d/9f02d0603a9cec81b119f36d16fdcfaebada1e b/.git/objects/6d/9f02d0603a9cec81b119f36d16fdcfaebada1e
deleted file mode 100644
Binary files a/.git/objects/6d/9f02d0603a9cec81b119f36d16fdcfaebada1e and /dev/null differ
diff --git a/.git/objects/6d/d1040ce0fbc93348725498c912f0e19175d433 b/.git/objects/6d/d1040ce0fbc93348725498c912f0e19175d433
deleted file mode 100644
Binary files a/.git/objects/6d/d1040ce0fbc93348725498c912f0e19175d433 and /dev/null differ
diff --git a/.git/objects/70/15cd0af9b0fc60257cff8d057cee6a475f44d8 b/.git/objects/70/15cd0af9b0fc60257cff8d057cee6a475f44d8
deleted file mode 100644
Binary files a/.git/objects/70/15cd0af9b0fc60257cff8d057cee6a475f44d8 and /dev/null differ
diff --git a/.git/objects/70/45659208ee4d7945199fadc8b48774da89d234 b/.git/objects/70/45659208ee4d7945199fadc8b48774da89d234
deleted file mode 100644
Binary files a/.git/objects/70/45659208ee4d7945199fadc8b48774da89d234 and /dev/null differ
diff --git a/.git/objects/70/8b4d9119f776f28cc85a2a0f58b4bf1c1e7b43 b/.git/objects/70/8b4d9119f776f28cc85a2a0f58b4bf1c1e7b43
deleted file mode 100644
--- a/.git/objects/70/8b4d9119f776f28cc85a2a0f58b4bf1c1e7b43
+++ /dev/null
@@ -1,2 +0,0 @@
-xÎM
-Â0@a×9Åìü5Ñ×&[jl©qQOo¯àöÁ/ÍµÆC[EÀùÂÎX":¨±=u¸d)ø²S¯òj7©Ïb0¯{ v(µeB)GÅ6Ì+Ü¹¦áü§mÚ®ÊãóæzícÐ4Ñ ª½îkMþBê³dhÛ"oõÌP@Ú
diff --git a/.git/objects/71/8178fa1b3fc34b7d7d961792c09b4b7b531b3e b/.git/objects/71/8178fa1b3fc34b7d7d961792c09b4b7b531b3e
deleted file mode 100644
Binary files a/.git/objects/71/8178fa1b3fc34b7d7d961792c09b4b7b531b3e and /dev/null differ
diff --git a/.git/objects/71/effddb09097324b4875677e94cd09048ea6521 b/.git/objects/71/effddb09097324b4875677e94cd09048ea6521
deleted file mode 100644
Binary files a/.git/objects/71/effddb09097324b4875677e94cd09048ea6521 and /dev/null differ
diff --git a/.git/objects/72/2f61d1774f7fbd456a5ab611c54408e61f2cc6 b/.git/objects/72/2f61d1774f7fbd456a5ab611c54408e61f2cc6
deleted file mode 100644
Binary files a/.git/objects/72/2f61d1774f7fbd456a5ab611c54408e61f2cc6 and /dev/null differ
diff --git a/.git/objects/73/e675e209d1125be27d5c119389c9337942f3b9 b/.git/objects/73/e675e209d1125be27d5c119389c9337942f3b9
deleted file mode 100644
--- a/.git/objects/73/e675e209d1125be27d5c119389c9337942f3b9
+++ /dev/null
@@ -1,2 +0,0 @@
-xK
-Â0@]ç³dL>î=Ádm°i¥ÄE=½½ÛÇ{ðdi­v0z8ôµ²ø ÃàlÈä÷(^t&ëÁ\0zóZæ¤SÒbÁfd·èáG6£M9*þôqYáÆMFó·¾¶×v}6®ÓIvM¨v°pD¨vº¯õòW¤î{xÔ©ÀÈsêüT?<`D
diff --git a/.git/objects/75/be0ead191c37fdda11fdd628c79538651403da b/.git/objects/75/be0ead191c37fdda11fdd628c79538651403da
deleted file mode 100644
Binary files a/.git/objects/75/be0ead191c37fdda11fdd628c79538651403da and /dev/null differ
diff --git a/.git/objects/76/86c4a999a50079bfd907f126625c1c46def3a3 b/.git/objects/76/86c4a999a50079bfd907f126625c1c46def3a3
deleted file mode 100644
Binary files a/.git/objects/76/86c4a999a50079bfd907f126625c1c46def3a3 and /dev/null differ
diff --git a/.git/objects/77/a5e6a3a94cbd5f7facc47bed8c940ab8ad3f5c b/.git/objects/77/a5e6a3a94cbd5f7facc47bed8c940ab8ad3f5c
deleted file mode 100644
Binary files a/.git/objects/77/a5e6a3a94cbd5f7facc47bed8c940ab8ad3f5c and /dev/null differ
diff --git a/.git/objects/78/b20a019fafabb14b2745db2c5912176729df2c b/.git/objects/78/b20a019fafabb14b2745db2c5912176729df2c
deleted file mode 100644
Binary files a/.git/objects/78/b20a019fafabb14b2745db2c5912176729df2c and /dev/null differ
diff --git a/.git/objects/79/9af54fbed761e676c67738cc6233b446e0e1e7 b/.git/objects/79/9af54fbed761e676c67738cc6233b446e0e1e7
deleted file mode 100644
Binary files a/.git/objects/79/9af54fbed761e676c67738cc6233b446e0e1e7 and /dev/null differ
diff --git a/.git/objects/7a/e848a180a7f100d45ab5ac2437fc0adde1f80e b/.git/objects/7a/e848a180a7f100d45ab5ac2437fc0adde1f80e
deleted file mode 100644
Binary files a/.git/objects/7a/e848a180a7f100d45ab5ac2437fc0adde1f80e and /dev/null differ
diff --git a/.git/objects/7b/47d4cbaad3be6b78ecb8c575ffc37bd46a5e5b b/.git/objects/7b/47d4cbaad3be6b78ecb8c575ffc37bd46a5e5b
deleted file mode 100644
Binary files a/.git/objects/7b/47d4cbaad3be6b78ecb8c575ffc37bd46a5e5b and /dev/null differ
diff --git a/.git/objects/7c/e9930fef6b52b551fff42c7b10fde4d08baa0a b/.git/objects/7c/e9930fef6b52b551fff42c7b10fde4d08baa0a
deleted file mode 100644
Binary files a/.git/objects/7c/e9930fef6b52b551fff42c7b10fde4d08baa0a and /dev/null differ
diff --git a/.git/objects/7e/51503aee21f2d28f8a91d72e4c081cb7b399e6 b/.git/objects/7e/51503aee21f2d28f8a91d72e4c081cb7b399e6
deleted file mode 100644
Binary files a/.git/objects/7e/51503aee21f2d28f8a91d72e4c081cb7b399e6 and /dev/null differ
diff --git a/.git/objects/81/ef35d79e1603434714aaa57410da0fa9f71e6e b/.git/objects/81/ef35d79e1603434714aaa57410da0fa9f71e6e
deleted file mode 100644
Binary files a/.git/objects/81/ef35d79e1603434714aaa57410da0fa9f71e6e and /dev/null differ
diff --git a/.git/objects/82/8e849a50ad7d3abf4afe0cc48a2b68512310cb b/.git/objects/82/8e849a50ad7d3abf4afe0cc48a2b68512310cb
deleted file mode 100644
--- a/.git/objects/82/8e849a50ad7d3abf4afe0cc48a2b68512310cb
+++ /dev/null
@@ -1,1 +0,0 @@
-x}RQkÛ0Þ³ÁÿáP÷®P¶QÚBÜm¬l¡MÈCæb]f,9Ò¹]Öî¿O²;×-cz:ÝÝ÷Ý÷´QfïÞ¿ºOàjúår9½ü_oÑ*Ã²Rÿppþ£8ªhÂg¤¢lêÉ´¡2F°áNÝew%ZÍ²ª%Ø5\É­D8ñI¶'ìX'%·ï;ÈúfèÏß3¢Zü§¾$©\¦ð0G»5¶r0[,æYÐéê%ÂÉ	¬GÙ@GÃÛ8Ïô®¤#0[-ZÍ+L`Î»3Vã¨	éù3øS¡Zº 5É4®«êÍk¡Ðö¸AKsÓ:ï¯ëý7C=¹-LS+t`Ã@pðRÙÁÓqÔþ	^CþÙmèßuZ\c­ö@ÇoüöØjµJ%°æÞá'JäÏö3tØÑä÷.öub?é°¤J±|ýì´<:³:1VþBqzè¬<~ºéuxwÙ¤0Ú¯Ö¬ûíÎ¾1´QÂ|ÿ Ú
diff --git a/.git/objects/82/94ea0d9b3cece7eab328cd560b903f4de899f2 b/.git/objects/82/94ea0d9b3cece7eab328cd560b903f4de899f2
deleted file mode 100644
Binary files a/.git/objects/82/94ea0d9b3cece7eab328cd560b903f4de899f2 and /dev/null differ
diff --git a/.git/objects/83/ac9915be5493cf66f1f96de88b5edce6c39929 b/.git/objects/83/ac9915be5493cf66f1f96de88b5edce6c39929
deleted file mode 100644
--- a/.git/objects/83/ac9915be5493cf66f1f96de88b5edce6c39929
+++ /dev/null
@@ -1,1 +0,0 @@
-xMjÃ0F»Ö)fEBýE6ÒE½4aË*ò¾"7Èö{¼ÇGµÌ ¬ýà#`N«4çm*iJh6ÒB@-þ|+Ãy´SÝÒR»Ñ:)t·ã4m²ùþÎ·Úà×ºyøzæù1?~®ÅçåjùiÐ9iFpD(úÚ¯q|K·õÀ°×6 Ü26ð°±o|=/ËB];®¥¶VwñIQu
diff --git a/.git/objects/84/bf304493959e3a08b3807bd704ec632a9fb8a9 b/.git/objects/84/bf304493959e3a08b3807bd704ec632a9fb8a9
deleted file mode 100644
Binary files a/.git/objects/84/bf304493959e3a08b3807bd704ec632a9fb8a9 and /dev/null differ
diff --git a/.git/objects/85/2ae7db61bff45b972b9a21023e162f5003d74d b/.git/objects/85/2ae7db61bff45b972b9a21023e162f5003d74d
deleted file mode 100644
--- a/.git/objects/85/2ae7db61bff45b972b9a21023e162f5003d74d
+++ /dev/null
@@ -1,1 +0,0 @@
-x±jÃ0;ü?dIi	H!vKv¡³b"m9'¹¥¾{%7vª¶Ó}Ü}ÿ[Ärµºù3<mwíî/oÄ­Wô>²ëO3ñUeÑy=¶Gy®e1G¢º²XàÝS]7x8ªuÆÆ½JV~&BTÿc²¶o3\_a\ß43»°TC¼[d1±o¢ó=çÉ°KQ¢2Ã¾¥Së5ªßâîO}¡600eU¦ÌécZ2¥ËJÍZjöÃ«ué\¹okßsð
diff --git a/.git/objects/85/b4c8d2256c11c570cacf64895353c0b9bd374f b/.git/objects/85/b4c8d2256c11c570cacf64895353c0b9bd374f
deleted file mode 100644
--- a/.git/objects/85/b4c8d2256c11c570cacf64895353c0b9bd374f
+++ /dev/null
@@ -1,2 +0,0 @@
-xÍjÃ0{ÖSì=¤Õ%¥Çûëõ§Ä¤²«Ò§¯ó¹Ì0º¶6wbæ·¾TrÈ:fÜ¨.&¸¦h²
-ØoÙ°tÊ^´GÄP¼Öª«%MÈyI})\ÜûuÝè,M¯B§¿ùö¸=>.Mæ¯£®í\°Ãà¢µLËÖîk/IæmýÝ&zFöÏóíFË
diff --git a/.git/objects/85/d7f3da362229792ee03571c10da871b205a69f b/.git/objects/85/d7f3da362229792ee03571c10da871b205a69f
deleted file mode 100644
Binary files a/.git/objects/85/d7f3da362229792ee03571c10da871b205a69f and /dev/null differ
diff --git a/.git/objects/85/df8a78c3966d87d24b5e8eac0a2bdcbf243c47 b/.git/objects/85/df8a78c3966d87d24b5e8eac0a2bdcbf243c47
deleted file mode 100644
Binary files a/.git/objects/85/df8a78c3966d87d24b5e8eac0a2bdcbf243c47 and /dev/null differ
diff --git a/.git/objects/85/fb86ec84907bcc86531dc82871948ff4d471fa b/.git/objects/85/fb86ec84907bcc86531dc82871948ff4d471fa
deleted file mode 100644
Binary files a/.git/objects/85/fb86ec84907bcc86531dc82871948ff4d471fa and /dev/null differ
diff --git a/.git/objects/86/dd8ae614f86096df8beda328370d683fba07a4 b/.git/objects/86/dd8ae614f86096df8beda328370d683fba07a4
deleted file mode 100644
--- a/.git/objects/86/dd8ae614f86096df8beda328370d683fba07a4
+++ /dev/null
@@ -1,4 +0,0 @@
-x¥S]o0Ý3ÿáæ$`ëZ¤L
-]ÕTëÚJÉB\|Äf¶I2Mûï³¡4Ûf	ùã^{Îå¥æ/p}ýñÝÏèfwßfw·ð´GQsB.(ÙVÂEôËu\gÇi[#|Amß-«ºzÏª9ê;BºNØíÍµ1×	àP @Sî.|oI]nJ¤ð(§?vjd"®HHÿüPJeÌ<äÀ0Q¸¨þiw(ÊÜÐ$Ï+T}{f§X°o×ÁÚ¦>aQ­TDµNå®c(J­Ê¬®¡ÏË9SÈt&Ödý¹¾Æz+o¾\>¿¿/Áû¾Êm¿
-ÁËDÆ²É@dÚÍääÙyø3¹*9K Bl"íÈMÞ2üq)Ñ-Ë9Õítn#µàæêº#`Æì'°#øÙÑ÷ZÓF[yÔÜSÓp<±ÞÆ¥ÖFÈF¨ÃL@2
-ÇupÒÕ8ÙëÿÖÄÎ,i[øÜ©ô{R·Óÿ¶%W\Ás<_#Ûªìx^øj1f<¬ÄºtÛ{h4tÓßó¶°û®å`ßFÓó¾ò>üP.
diff --git a/.git/objects/87/66065959fca5de5327f875dbb67559f69b52b6 b/.git/objects/87/66065959fca5de5327f875dbb67559f69b52b6
deleted file mode 100644
--- a/.git/objects/87/66065959fca5de5327f875dbb67559f69b52b6
+++ /dev/null
@@ -1,3 +0,0 @@
-x]oÓ0¹î¯ð|µ]$^5!QêD*éÐÝF*@Ó.\Ûk¼:vOVÿmPÑ¾ïsìsÎJÛÏß¾¡'óÛ,ÿ~w
-(5º[~X|Êùz2ÏçèÛU~½@ãøå53N²iB.o0Â@õ¶mãö"¶õä÷dXã`¼rÆNioWjã¿PÆÉ¤7©d"¥¥æ_	U$4jàÌ¢|_Ix¿K0È@"^°ÚIHùÇèF$¥ @ËaÖÊlPQË§[.¹sÕR'ØÁ^KWH	0;AçNðm°tXÇkUr5÷aBX¾P:~ö¸Wîg¶e½Öô«îè¡'Ù|ÏF­2Â¶±5Ú2ôÔêNÏÐÏ­åÂMMG<>¦£ ¤ÏâÊ=R"Á¥2Ê?B¨m¿µ¢Ñ2ÒÊ?­×ÌùÊpV>N¯»{GIÒF§T«?²»ñ&_.%ð¢©¢YE
-áSÀêµ¯.ò¬A%ÌgB«ÿ"fEc6R£¸W¾«S;ÅQÌ{ëÀ¬¾uÐÅý?í%GQ¾YÝAh§xaÐÄwCOù):ýæ{.
diff --git a/.git/objects/87/675ebd8ba75eb85ed5ad0ba5888fce6076010c b/.git/objects/87/675ebd8ba75eb85ed5ad0ba5888fce6076010c
deleted file mode 100644
Binary files a/.git/objects/87/675ebd8ba75eb85ed5ad0ba5888fce6076010c and /dev/null differ
diff --git a/.git/objects/89/2ea0f9d3ad0fefdbacb4e06c7629c1d4317bad b/.git/objects/89/2ea0f9d3ad0fefdbacb4e06c7629c1d4317bad
deleted file mode 100644
Binary files a/.git/objects/89/2ea0f9d3ad0fefdbacb4e06c7629c1d4317bad and /dev/null differ
diff --git a/.git/objects/8a/4e26e09c96d9bd95bbefa4c2cde4fbf8087382 b/.git/objects/8a/4e26e09c96d9bd95bbefa4c2cde4fbf8087382
deleted file mode 100644
--- a/.git/objects/8a/4e26e09c96d9bd95bbefa4c2cde4fbf8087382
+++ /dev/null
@@ -1,1 +0,0 @@
-xKÊÉOR0·`HÌÉ±RH­HÌ-ÈIååâå2­x¹8Ó3a2zÅ ÉäÔÄ<TQ®^¾>ÔËÈ332Ißå
diff --git a/.git/objects/8b/beae61080d264f5b69734128be1ecea8d6bfd4 b/.git/objects/8b/beae61080d264f5b69734128be1ecea8d6bfd4
deleted file mode 100644
Binary files a/.git/objects/8b/beae61080d264f5b69734128be1ecea8d6bfd4 and /dev/null differ
diff --git a/.git/objects/8c/5dd7b601ae56b88e967ac486c0006561548b87 b/.git/objects/8c/5dd7b601ae56b88e967ac486c0006561548b87
deleted file mode 100644
Binary files a/.git/objects/8c/5dd7b601ae56b88e967ac486c0006561548b87 and /dev/null differ
diff --git a/.git/objects/8d/9c0ac2c94c7beeb8658183e131da7ce5effefb b/.git/objects/8d/9c0ac2c94c7beeb8658183e131da7ce5effefb
deleted file mode 100644
Binary files a/.git/objects/8d/9c0ac2c94c7beeb8658183e131da7ce5effefb and /dev/null differ
diff --git a/.git/objects/91/e943bb62869a6178db375f7cb03e274ee28ca5 b/.git/objects/91/e943bb62869a6178db375f7cb03e274ee28ca5
deleted file mode 100644
Binary files a/.git/objects/91/e943bb62869a6178db375f7cb03e274ee28ca5 and /dev/null differ
diff --git a/.git/objects/93/ac39e13883ec31ab749f768d790b6b14a0193d b/.git/objects/93/ac39e13883ec31ab749f768d790b6b14a0193d
deleted file mode 100644
Binary files a/.git/objects/93/ac39e13883ec31ab749f768d790b6b14a0193d and /dev/null differ
diff --git a/.git/objects/98/5425b5fac6f110e7da367684ea0168dbc8d4dd b/.git/objects/98/5425b5fac6f110e7da367684ea0168dbc8d4dd
deleted file mode 100644
Binary files a/.git/objects/98/5425b5fac6f110e7da367684ea0168dbc8d4dd and /dev/null differ
diff --git a/.git/objects/98/786dafc5b13181d5e4f6806a98124101fe317b b/.git/objects/98/786dafc5b13181d5e4f6806a98124101fe317b
deleted file mode 100644
Binary files a/.git/objects/98/786dafc5b13181d5e4f6806a98124101fe317b and /dev/null differ
diff --git a/.git/objects/99/ea1f98242bf7bd4527f7137c29cecb1dc6964a b/.git/objects/99/ea1f98242bf7bd4527f7137c29cecb1dc6964a
deleted file mode 100644
Binary files a/.git/objects/99/ea1f98242bf7bd4527f7137c29cecb1dc6964a and /dev/null differ
diff --git a/.git/objects/9a/6ebc14c4c86e50b3654d62c33ed7d83351c524 b/.git/objects/9a/6ebc14c4c86e50b3654d62c33ed7d83351c524
deleted file mode 100644
Binary files a/.git/objects/9a/6ebc14c4c86e50b3654d62c33ed7d83351c524 and /dev/null differ
diff --git a/.git/objects/9a/6fccf7fcd2cd8aea37d5ec6057d9c18b6652a0 b/.git/objects/9a/6fccf7fcd2cd8aea37d5ec6057d9c18b6652a0
deleted file mode 100644
Binary files a/.git/objects/9a/6fccf7fcd2cd8aea37d5ec6057d9c18b6652a0 and /dev/null differ
diff --git a/.git/objects/9b/b7324cccda0268cf5e5f318992da50b4f4f003 b/.git/objects/9b/b7324cccda0268cf5e5f318992da50b4f4f003
deleted file mode 100644
--- a/.git/objects/9b/b7324cccda0268cf5e5f318992da50b4f4f003
+++ /dev/null
@@ -1,4 +0,0 @@
-x­QÑnÓ0å¹_áí!1Õ$ ki¤CC6¡L¦=¸ömãÕµC|Ó´Bü;v´2Æ¼ù^ßsÎ½ç,´]ÉËWÏ£ÙU^|½¾ %n4¹¾y31öù4glVÌÈËâÃã¤¨¹q
-5\3vñZ"Vgµm·§±­W¬øÄvkÀÃ3Âd,QÒ,éôvm\úËx2ôà0
-\fÉû-±à[£¶)Í­A0û
-(}R²À>%¢äµLo·ÑkJX BÙ{@Q6UYLXßN´2kRÖ°L©ÀM,£¤R{®@JÐ:Ý@NéUt*NÔªBâjáoãRZ±T:¾÷tè{¾åý¬¿õ¯,Ðc,9ºÍgçÅùí¨UFÚ6¶F[.IJ!r|B¾W|sß?>þ»»ËF"¬7uaå(Ò2Ê/!Õ¶/­l4Dajß¯ÐÜù¨¯ýÓÃÊàáÊÇS/¹w`@[z|éíldâãóíOË¬/»e¼^ùTé+¿Èá_Â¸ßâ·MþUõI¹ÿ«FvG<úÕ¤Ö»ÌBtþØàPöKX
diff --git a/.git/objects/9c/007b2a800ccd64ea6589e3aaf436dd386c5879 b/.git/objects/9c/007b2a800ccd64ea6589e3aaf436dd386c5879
deleted file mode 100644
Binary files a/.git/objects/9c/007b2a800ccd64ea6589e3aaf436dd386c5879 and /dev/null differ
diff --git a/.git/objects/9c/39c23ffc9888f808ae093fdbd8ab7f27d175a2 b/.git/objects/9c/39c23ffc9888f808ae093fdbd8ab7f27d175a2
deleted file mode 100644
--- a/.git/objects/9c/39c23ffc9888f808ae093fdbd8ab7f27d175a2
+++ /dev/null
@@ -1,1 +0,0 @@
-xeMoÛ0w.ÐÿÀ5¥Aw@±a½µÝ!Ãz(ú1`T¶Z,i]7ÿ~¯ä$0")òá+×Ö×ôñìËçwZùAoç$­Iç;KÓöáýñÑñÑnÍ^9n)uÊZZ=<ÜRâ.XîØãÝ>F¼Ù-ý²ò*Gçggtã¯I¼(û{Úª2oKã+Ý´§ÿf§NiFÕL*QçuoU$å4qW³Öª¶e'øÖs2kÚúå7ªVv±Ì´RiÃ(\0§>	Ú yë~_IÝÖ%Y£B/dð¸l¢áFJ½×N÷ß!~0Ò^d|ºRÉ4ÛÕ´î])kdKÓo·?ÎÉ;pZûHÎ§9àñîî|/Æ=<TTÇDSÃKzªz¯.¬ÕS¹ÏèR<¶¶ÊèÆåÉSF«K	ë»ì¥¥)Æ¨@ésÃ>ÏVIßSd¼Áîß¶<>L&ô;Í®1²í¡ej|È¯÷Z"cÖFD@ÏÀ5§2ÚÆöÜv«+ÏyoycÑ6A,GQ	¿	¤6?ø]·½Û°>]Åäãö¢?½yª(&#»öÖú!Ã.òâ´ÛþàÚ) $Í:ÓñB¶ÓlVøíýF;¯?/ê­päÅydvI:³TtØûç9_ë»Àb$WééÞ©@4Úl°þÉÉküã®.çtÅ¹ 4ÏW¦ÜÔÒû È+ò6e&5A­yn)pN¹W·ªBÚñ]£4såoÁ=îÃ_FKs
diff --git a/.git/objects/9c/54e55cc84dfa3ff2649648983bc83143370b10 b/.git/objects/9c/54e55cc84dfa3ff2649648983bc83143370b10
deleted file mode 100644
Binary files a/.git/objects/9c/54e55cc84dfa3ff2649648983bc83143370b10 and /dev/null differ
diff --git a/.git/objects/9d/e2c9da7719f0fc9bc022d1377992812a7544bb b/.git/objects/9d/e2c9da7719f0fc9bc022d1377992812a7544bb
deleted file mode 100644
Binary files a/.git/objects/9d/e2c9da7719f0fc9bc022d1377992812a7544bb and /dev/null differ
diff --git a/.git/objects/9e/312f7816623a831ed832285328746834e6886c b/.git/objects/9e/312f7816623a831ed832285328746834e6886c
deleted file mode 100644
Binary files a/.git/objects/9e/312f7816623a831ed832285328746834e6886c and /dev/null differ
diff --git a/.git/objects/9e/7e76a48901351049e9c6fe083ba4bb95c2c43f b/.git/objects/9e/7e76a48901351049e9c6fe083ba4bb95c2c43f
deleted file mode 100644
Binary files a/.git/objects/9e/7e76a48901351049e9c6fe083ba4bb95c2c43f and /dev/null differ
diff --git a/.git/objects/a0/6d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3 b/.git/objects/a0/6d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3
deleted file mode 100644
Binary files a/.git/objects/a0/6d1fbe75dfe3b2ebe7e03bed4f97c8b05468e3 and /dev/null differ
diff --git a/.git/objects/a3/3f00a997926762956b66487bc763c7500b5912 b/.git/objects/a3/3f00a997926762956b66487bc763c7500b5912
deleted file mode 100644
Binary files a/.git/objects/a3/3f00a997926762956b66487bc763c7500b5912 and /dev/null differ
diff --git a/.git/objects/a3/7a47a2c1e944a56b3018b388c79fe13c082d4d b/.git/objects/a3/7a47a2c1e944a56b3018b388c79fe13c082d4d
deleted file mode 100644
Binary files a/.git/objects/a3/7a47a2c1e944a56b3018b388c79fe13c082d4d and /dev/null differ
diff --git a/.git/objects/a4/0d122f65722cef8bbeaa4192b0c65f24e3dac8 b/.git/objects/a4/0d122f65722cef8bbeaa4192b0c65f24e3dac8
deleted file mode 100644
Binary files a/.git/objects/a4/0d122f65722cef8bbeaa4192b0c65f24e3dac8 and /dev/null differ
diff --git a/.git/objects/a4/52888e3b29d25f2f4b06e3f1cae1ddba210add b/.git/objects/a4/52888e3b29d25f2f4b06e3f1cae1ddba210add
deleted file mode 100644
--- a/.git/objects/a4/52888e3b29d25f2f4b06e3f1cae1ddba210add
+++ /dev/null
@@ -1,1 +0,0 @@
-xEÐAKÃ0`Ïþì¢²vUAv¨UeÎÒæÓ²¤K¿¨Cüï&ÛÔBÞäÉÔÊÔpv~rðávz7{Î®áþ­2\ x"+õ[Ãø;DN!,¸ÔðÑ¢Å°(W±ÿã©i]Ì:ñ¯WòU¢+N<)6;xEZ®×[-Àâ.@hØµxÄNm¶ÙiByÈ.&Ô/7²QÉ?iÜÒJ±ê¨ò@ßÝûØwÓßÀóEÒÝpe§Ðæ/Æ»öäfuÎFÎªËÆu÷XµS}âge8²ýð/¡6(é=_.3¤vÏû}«q1
diff --git a/.git/objects/a4/b9abe272231882d54e9a54a8e29feb1b6f839f b/.git/objects/a4/b9abe272231882d54e9a54a8e29feb1b6f839f
deleted file mode 100644
Binary files a/.git/objects/a4/b9abe272231882d54e9a54a8e29feb1b6f839f and /dev/null differ
diff --git a/.git/objects/a7/1ae79e4cf33baeecab2eeecf21ae31d35dd99f b/.git/objects/a7/1ae79e4cf33baeecab2eeecf21ae31d35dd99f
deleted file mode 100644
Binary files a/.git/objects/a7/1ae79e4cf33baeecab2eeecf21ae31d35dd99f and /dev/null differ
diff --git a/.git/objects/a8/f041ca842f9d4b30406cf727910b74b3cc92d6 b/.git/objects/a8/f041ca842f9d4b30406cf727910b74b3cc92d6
deleted file mode 100644
--- a/.git/objects/a8/f041ca842f9d4b30406cf727910b74b3cc92d6
+++ /dev/null
@@ -1,3 +0,0 @@
-xA
-Â0E]ç³ËdÒ¤	XpáNA/¤[j¬¸¨§·Wp÷y¼?N9HM!$î¬ÓÔÉ±Q!¢´]QªFZÆPdñö3¿
-x4«¸Ñ]b×É¨wurM´um,+á?¥f8û{ûï0.ãr|d?<«8åÈIÖÎj-¢Xéz­ð_À*\/·;Ú{+~rB4
diff --git a/.git/objects/a9/cfae246b204d28cdead9aa089ae8a7cded99b0 b/.git/objects/a9/cfae246b204d28cdead9aa089ae8a7cded99b0
deleted file mode 100644
Binary files a/.git/objects/a9/cfae246b204d28cdead9aa089ae8a7cded99b0 and /dev/null differ
diff --git a/.git/objects/ab/41fa19ef0fbeb0088d8f325b1dc4280cbe9817 b/.git/objects/ab/41fa19ef0fbeb0088d8f325b1dc4280cbe9817
deleted file mode 100644
--- a/.git/objects/ab/41fa19ef0fbeb0088d8f325b1dc4280cbe9817
+++ /dev/null
@@ -1,4 +0,0 @@
-xK
-Â0Ego.Hþq$nã%}iCºzëî{R«µtRïúBYªd®
-¥Õ#Ïh¼u6©ÕC2>;"öÀîl~ÃZ¢J2j©ãè·Á¹>
-á«Om+Ö4!?e^çõ<V,·CjõBs²RÁKÎÙF·kþØ¥-cëÐT	¶¶wyx#ö"F¼
diff --git a/.git/objects/ab/8f12f061e87b2922d0371d0c9e971ca49c8de3 b/.git/objects/ab/8f12f061e87b2922d0371d0c9e971ca49c8de3
deleted file mode 100644
Binary files a/.git/objects/ab/8f12f061e87b2922d0371d0c9e971ca49c8de3 and /dev/null differ
diff --git a/.git/objects/ac/1fd40fffacfeb8c1880a86e9dc0aa50c9c3cf2 b/.git/objects/ac/1fd40fffacfeb8c1880a86e9dc0aa50c9c3cf2
deleted file mode 100644
--- a/.git/objects/ac/1fd40fffacfeb8c1880a86e9dc0aa50c9c3cf2
+++ /dev/null
@@ -1,1 +0,0 @@
-xuQßoÓ0æ¹ÅÍ¼lÉQíuM"vDad4íÁµÝÆkøÚ´BüïØIÄ*ow§ïÇÝ}KãðúüâEv2¿ßo¯¡¢Û»7÷3`	â×óâ¼Ã·wåÇÓWP6ÜzMÚYn¯?1`Q}Ø¶mÚ§®Ycù÷QkÉCÐ3$Yu~û±>ÿÊx2ôäU\ÙF[R¨[½ËÙÌYRòP+¢ïrFjOÕ§ *ÞxEù]ù6¹`EF*>(Õ¶N¿'-2ì§Ñö	ªF­ræâ6Þ3hÉ§Q¾RPðl:@ÇÎÙM¤t&^4º&ð§q)xJ¶¤MúäØ|Ç{l8ûªÈöpÙÉýl~U^ÝZm¥kSgãrXm­éÀéü¬ùZ-Âüôlúk:B|x(FÏ&Øÿtéä´ÌÙF[z×·NnJ"H5a^0Ü¤¯£ûëu¸ °%t§Yq¡ÙA\}¬~Úk÷õ!¤Ï%!¾Ü]ú.¥ð9Þ¬ClÃuX fÈñó~gqä¿³5ü
diff --git a/.git/objects/ac/4473886e6ba9209e373ecacdf085588c79d527 b/.git/objects/ac/4473886e6ba9209e373ecacdf085588c79d527
deleted file mode 100644
Binary files a/.git/objects/ac/4473886e6ba9209e373ecacdf085588c79d527 and /dev/null differ
diff --git a/.git/objects/ac/65ccb7a09106d00d93cb9ce559e6265ae9bdba b/.git/objects/ac/65ccb7a09106d00d93cb9ce559e6265ae9bdba
deleted file mode 100644
Binary files a/.git/objects/ac/65ccb7a09106d00d93cb9ce559e6265ae9bdba and /dev/null differ
diff --git a/.git/objects/ad/296ab5c62662ad2f55c20cd75483c7014e3a9e b/.git/objects/ad/296ab5c62662ad2f55c20cd75483c7014e3a9e
deleted file mode 100644
Binary files a/.git/objects/ad/296ab5c62662ad2f55c20cd75483c7014e3a9e and /dev/null differ
diff --git a/.git/objects/ae/3bc1e76696168e39e4cf60afc4131175005b11 b/.git/objects/ae/3bc1e76696168e39e4cf60afc4131175005b11
deleted file mode 100644
Binary files a/.git/objects/ae/3bc1e76696168e39e4cf60afc4131175005b11 and /dev/null differ
diff --git a/.git/objects/ae/599a4b87624927da288aa5cd12b2b47b0c7e2d b/.git/objects/ae/599a4b87624927da288aa5cd12b2b47b0c7e2d
deleted file mode 100644
Binary files a/.git/objects/ae/599a4b87624927da288aa5cd12b2b47b0c7e2d and /dev/null differ
diff --git a/.git/objects/ae/d160a086ca22c96b3918eb9525818ab4adf8f8 b/.git/objects/ae/d160a086ca22c96b3918eb9525818ab4adf8f8
deleted file mode 100644
Binary files a/.git/objects/ae/d160a086ca22c96b3918eb9525818ab4adf8f8 and /dev/null differ
diff --git a/.git/objects/b1/97449e22aa6e00dcbb765294c13b957ad35207 b/.git/objects/b1/97449e22aa6e00dcbb765294c13b957ad35207
deleted file mode 100644
--- a/.git/objects/b1/97449e22aa6e00dcbb765294c13b957ad35207
+++ /dev/null
@@ -1,3 +0,0 @@
-xÎM
-Â0@a×9ÅìN~ÚKà&ÉDK&]èéõ
-n|ðb-eî@äv}cuH^GrìÆÑ&g\¢,iBë4zñ*Ïql	)AmÀ>zKä#JÊcÊ!Ö·~¯+\¸Ä;Ãñ3/ïå}¾XË	8¹ÈÂ	Qýêo­Ë_H]k] Õ"°5yHkÐú3Ô­«/THg
diff --git a/.git/objects/b3/591481b033fac241826b9fc64a51d925d71175 b/.git/objects/b3/591481b033fac241826b9fc64a51d925d71175
deleted file mode 100644
Binary files a/.git/objects/b3/591481b033fac241826b9fc64a51d925d71175 and /dev/null differ
diff --git a/.git/objects/b4/73be4e130f0ee35eb42d4037b2c99ee5003326 b/.git/objects/b4/73be4e130f0ee35eb42d4037b2c99ee5003326
deleted file mode 100644
--- a/.git/objects/b4/73be4e130f0ee35eb42d4037b2c99ee5003326
+++ /dev/null
@@ -1,1 +0,0 @@
-xAnÃ0sÖ+xË¡@AJ®eAc¾"©Øp®rH^_}¡ÇÝÁbV¶ZÞ¶Á¼1¤Í,y0%>	é(fV÷àÝî"M§ÂC0ä¨QÓH1yÁ{Î_¡3süló¶Ã«Ì§÷²¾Ö×ùZy¹}ÊV¿¤@)aô®·ýZ³Ü5ù²Ù½U7Y¦în¸Gõ
diff --git a/.git/objects/b5/c49f759d54940ec00c97cc026a1e759eaeacc1 b/.git/objects/b5/c49f759d54940ec00c97cc026a1e759eaeacc1
deleted file mode 100644
Binary files a/.git/objects/b5/c49f759d54940ec00c97cc026a1e759eaeacc1 and /dev/null differ
diff --git a/.git/objects/b6/3279c85b76f94cc28de65c1a8c2f65c1814e7e b/.git/objects/b6/3279c85b76f94cc28de65c1a8c2f65c1814e7e
deleted file mode 100644
Binary files a/.git/objects/b6/3279c85b76f94cc28de65c1a8c2f65c1814e7e and /dev/null differ
diff --git a/.git/objects/b6/4527d35ee22c00cd184fb921429a7db1984bf8 b/.git/objects/b6/4527d35ee22c00cd184fb921429a7db1984bf8
deleted file mode 100644
Binary files a/.git/objects/b6/4527d35ee22c00cd184fb921429a7db1984bf8 and /dev/null differ
diff --git a/.git/objects/b8/3c2375bba608232746064adfdb067cf57e5d80 b/.git/objects/b8/3c2375bba608232746064adfdb067cf57e5d80
deleted file mode 100644
Binary files a/.git/objects/b8/3c2375bba608232746064adfdb067cf57e5d80 and /dev/null differ
diff --git a/.git/objects/b9/61383890c9e39ba7e178c2f3afb5adc10ea8a0 b/.git/objects/b9/61383890c9e39ba7e178c2f3afb5adc10ea8a0
deleted file mode 100644
Binary files a/.git/objects/b9/61383890c9e39ba7e178c2f3afb5adc10ea8a0 and /dev/null differ
diff --git a/.git/objects/b9/eb5d552bfc0adee1044e395991edcfd292826b b/.git/objects/b9/eb5d552bfc0adee1044e395991edcfd292826b
deleted file mode 100644
Binary files a/.git/objects/b9/eb5d552bfc0adee1044e395991edcfd292826b and /dev/null differ
diff --git a/.git/objects/ba/09adf09da69f7bd0411faa4beae8d28026eb7c b/.git/objects/ba/09adf09da69f7bd0411faa4beae8d28026eb7c
deleted file mode 100644
Binary files a/.git/objects/ba/09adf09da69f7bd0411faa4beae8d28026eb7c and /dev/null differ
diff --git a/.git/objects/bb/f0dc8f66b96264fdfae4c0bf005d5338436767 b/.git/objects/bb/f0dc8f66b96264fdfae4c0bf005d5338436767
deleted file mode 100644
Binary files a/.git/objects/bb/f0dc8f66b96264fdfae4c0bf005d5338436767 and /dev/null differ
diff --git a/.git/objects/bb/f22517e7bb65f1c989ac568e5d6fe08f7a8b51 b/.git/objects/bb/f22517e7bb65f1c989ac568e5d6fe08f7a8b51
deleted file mode 100644
Binary files a/.git/objects/bb/f22517e7bb65f1c989ac568e5d6fe08f7a8b51 and /dev/null differ
diff --git a/.git/objects/bf/bd19dedb8b81537db010dab8523cf46ca5e8a8 b/.git/objects/bf/bd19dedb8b81537db010dab8523cf46ca5e8a8
deleted file mode 100644
Binary files a/.git/objects/bf/bd19dedb8b81537db010dab8523cf46ca5e8a8 and /dev/null differ
diff --git a/.git/objects/bf/ed8952d1f03e073bc0189e9bcc1371850662ce b/.git/objects/bf/ed8952d1f03e073bc0189e9bcc1371850662ce
deleted file mode 100644
Binary files a/.git/objects/bf/ed8952d1f03e073bc0189e9bcc1371850662ce and /dev/null differ
diff --git a/.git/objects/c0/9136db3f6d1b79503253d341373405dd2f0e13 b/.git/objects/c0/9136db3f6d1b79503253d341373405dd2f0e13
deleted file mode 100644
Binary files a/.git/objects/c0/9136db3f6d1b79503253d341373405dd2f0e13 and /dev/null differ
diff --git a/.git/objects/c1/1eddba9f3bf52258e78eac875bb8d59575c4ef b/.git/objects/c1/1eddba9f3bf52258e78eac875bb8d59575c4ef
deleted file mode 100644
Binary files a/.git/objects/c1/1eddba9f3bf52258e78eac875bb8d59575c4ef and /dev/null differ
diff --git a/.git/objects/c1/ef5202b4e0351ba9c95229c0edf7dfbfb9bb33 b/.git/objects/c1/ef5202b4e0351ba9c95229c0edf7dfbfb9bb33
deleted file mode 100644
--- a/.git/objects/c1/ef5202b4e0351ba9c95229c0edf7dfbfb9bb33
+++ /dev/null
@@ -1,2 +0,0 @@
-xA
-Â0E]ç³T1i¸òcÚRH;.êéxïÃã¿TDFÍFç¡·lÎg{fËÔ¶!4xGJb²Éß:n,i`8}ÆiÖËCx|R3C>¢'ØãÑÔµ^iþK2W^2üTØJY´BW;ç"0¨¾ºù¢;U
diff --git a/.git/objects/c2/d02249f1afb2578f5af2fcdfab5bcfbdcdb2e4 b/.git/objects/c2/d02249f1afb2578f5af2fcdfab5bcfbdcdb2e4
deleted file mode 100644
Binary files a/.git/objects/c2/d02249f1afb2578f5af2fcdfab5bcfbdcdb2e4 and /dev/null differ
diff --git a/.git/objects/c3/ba3cdbd0c2f4fe371654b40c77b6d22dddc459 b/.git/objects/c3/ba3cdbd0c2f4fe371654b40c77b6d22dddc459
deleted file mode 100644
Binary files a/.git/objects/c3/ba3cdbd0c2f4fe371654b40c77b6d22dddc459 and /dev/null differ
diff --git a/.git/objects/c4/41d386e187efdfa3b1992b4bd4406bd9a2ad0d b/.git/objects/c4/41d386e187efdfa3b1992b4bd4406bd9a2ad0d
deleted file mode 100644
Binary files a/.git/objects/c4/41d386e187efdfa3b1992b4bd4406bd9a2ad0d and /dev/null differ
diff --git a/.git/objects/c6/56325a56d86c044bb5136b9e8dafa421c4f758 b/.git/objects/c6/56325a56d86c044bb5136b9e8dafa421c4f758
deleted file mode 100644
Binary files a/.git/objects/c6/56325a56d86c044bb5136b9e8dafa421c4f758 and /dev/null differ
diff --git a/.git/objects/c8/298c807614715a3dd52fe3fddcd74b42d8dd51 b/.git/objects/c8/298c807614715a3dd52fe3fddcd74b42d8dd51
deleted file mode 100644
Binary files a/.git/objects/c8/298c807614715a3dd52fe3fddcd74b42d8dd51 and /dev/null differ
diff --git a/.git/objects/c8/59418b5c47a1a2516f5fbfa3881490687126fa b/.git/objects/c8/59418b5c47a1a2516f5fbfa3881490687126fa
deleted file mode 100644
Binary files a/.git/objects/c8/59418b5c47a1a2516f5fbfa3881490687126fa and /dev/null differ
diff --git a/.git/objects/c9/1a524dd7612f6b6b1a10132e0315ee38c4e7ac b/.git/objects/c9/1a524dd7612f6b6b1a10132e0315ee38c4e7ac
deleted file mode 100644
Binary files a/.git/objects/c9/1a524dd7612f6b6b1a10132e0315ee38c4e7ac and /dev/null differ
diff --git a/.git/objects/ca/7171c6a9384a3af595c1110538b011803b834c b/.git/objects/ca/7171c6a9384a3af595c1110538b011803b834c
deleted file mode 100644
Binary files a/.git/objects/ca/7171c6a9384a3af595c1110538b011803b834c and /dev/null differ
diff --git a/.git/objects/ca/b2bc3ee178be9364cfc53d425947736f8898f7 b/.git/objects/ca/b2bc3ee178be9364cfc53d425947736f8898f7
deleted file mode 100644
Binary files a/.git/objects/ca/b2bc3ee178be9364cfc53d425947736f8898f7 and /dev/null differ
diff --git a/.git/objects/cb/bdc6717954437d467660c6c1d4355c420de08c b/.git/objects/cb/bdc6717954437d467660c6c1d4355c420de08c
deleted file mode 100644
Binary files a/.git/objects/cb/bdc6717954437d467660c6c1d4355c420de08c and /dev/null differ
diff --git a/.git/objects/cc/746e214c400d625c17bb704964d2490009dcd6 b/.git/objects/cc/746e214c400d625c17bb704964d2490009dcd6
deleted file mode 100644
Binary files a/.git/objects/cc/746e214c400d625c17bb704964d2490009dcd6 and /dev/null differ
diff --git a/.git/objects/cd/4c39b6676acd7436a462a964926eb11e4b348a b/.git/objects/cd/4c39b6676acd7436a462a964926eb11e4b348a
deleted file mode 100644
Binary files a/.git/objects/cd/4c39b6676acd7436a462a964926eb11e4b348a and /dev/null differ
diff --git a/.git/objects/ce/c17859d0a08acd01b9297297b32881bc4f7104 b/.git/objects/ce/c17859d0a08acd01b9297297b32881bc4f7104
deleted file mode 100644
Binary files a/.git/objects/ce/c17859d0a08acd01b9297297b32881bc4f7104 and /dev/null differ
diff --git a/.git/objects/cf/34a7265591f7c3f2d241bd7a554e96c85c68d5 b/.git/objects/cf/34a7265591f7c3f2d241bd7a554e96c85c68d5
deleted file mode 100644
Binary files a/.git/objects/cf/34a7265591f7c3f2d241bd7a554e96c85c68d5 and /dev/null differ
diff --git a/.git/objects/cf/ed5d601e7c6661a4c95c652d865834a2960cc4 b/.git/objects/cf/ed5d601e7c6661a4c95c652d865834a2960cc4
deleted file mode 100644
--- a/.git/objects/cf/ed5d601e7c6661a4c95c652d865834a2960cc4
+++ /dev/null
@@ -1,1 +0,0 @@
-x+)JMU041c040031QÐKÏ,ÉLÏË/Je`ú¿ >sÂwßõ7NËí_<³ìê PðN-IÎ(-`xûîý½¦+%ÕOû_ýöC\~í¨9¾Ù©i9©ïM¯ÏcvvYµ´DàÿÊïryP5©¹9©zÅK:ú¬5/Åë{³=þxêáÝ]\w]>¿
diff --git a/.git/objects/d2/5e09437126d6267b441999d66ed90f352e67bd b/.git/objects/d2/5e09437126d6267b441999d66ed90f352e67bd
deleted file mode 100644
Binary files a/.git/objects/d2/5e09437126d6267b441999d66ed90f352e67bd and /dev/null differ
diff --git a/.git/objects/d4/6ff18dce582c39f62e9ad1a96b511f0fa43a75 b/.git/objects/d4/6ff18dce582c39f62e9ad1a96b511f0fa43a75
deleted file mode 100644
Binary files a/.git/objects/d4/6ff18dce582c39f62e9ad1a96b511f0fa43a75 and /dev/null differ
diff --git a/.git/objects/d5/02a059e60a1f025639da03678a15d54c4b3e78 b/.git/objects/d5/02a059e60a1f025639da03678a15d54c4b3e78
deleted file mode 100644
Binary files a/.git/objects/d5/02a059e60a1f025639da03678a15d54c4b3e78 and /dev/null differ
diff --git a/.git/objects/d6/92ca264bd3fbdb96606ebd98c8386f57bcea99 b/.git/objects/d6/92ca264bd3fbdb96606ebd98c8386f57bcea99
deleted file mode 100644
Binary files a/.git/objects/d6/92ca264bd3fbdb96606ebd98c8386f57bcea99 and /dev/null differ
diff --git a/.git/objects/d6/ef2f17034da6c0b06de2b23faea8f7240cf232 b/.git/objects/d6/ef2f17034da6c0b06de2b23faea8f7240cf232
deleted file mode 100644
Binary files a/.git/objects/d6/ef2f17034da6c0b06de2b23faea8f7240cf232 and /dev/null differ
diff --git a/.git/objects/d7/1598db24de6255e4a1d7a3dbd3c86a39b05b8f b/.git/objects/d7/1598db24de6255e4a1d7a3dbd3c86a39b05b8f
deleted file mode 100644
Binary files a/.git/objects/d7/1598db24de6255e4a1d7a3dbd3c86a39b05b8f and /dev/null differ
diff --git a/.git/objects/d7/52cbde2090cf51b382e0060e0d13a90ef9dfa8 b/.git/objects/d7/52cbde2090cf51b382e0060e0d13a90ef9dfa8
deleted file mode 100644
--- a/.git/objects/d7/52cbde2090cf51b382e0060e0d13a90ef9dfa8
+++ /dev/null
@@ -1,1 +0,0 @@
-xÎMjÃ0@á®uÙÊh¬èB	Yõãñ(¢¢Èôôõº}ðÁVk@äÞFWïOyfÔ *Âya&ÒÉQÎ$sÖH.oîúàb9xvó2)Å`Qí)¡óS°IÈR¢ïcm¾¸ÊÊpþ-Ûk{]nËýCZýël#Â;¢9ê±6ô_È\ùYzÛGyÜà¹¶ý¾ÀOëù:©F¤
diff --git a/.git/objects/d7/b08975219be4409e54bcb5fa9ae7a85def6e31 b/.git/objects/d7/b08975219be4409e54bcb5fa9ae7a85def6e31
deleted file mode 100644
Binary files a/.git/objects/d7/b08975219be4409e54bcb5fa9ae7a85def6e31 and /dev/null differ
diff --git a/.git/objects/d9/14ad60c2478c15e417bbfbae1ae6cbacfb8968 b/.git/objects/d9/14ad60c2478c15e417bbfbae1ae6cbacfb8968
deleted file mode 100644
Binary files a/.git/objects/d9/14ad60c2478c15e417bbfbae1ae6cbacfb8968 and /dev/null differ
diff --git a/.git/objects/d9/50655d5180bc080ff323a21ce6d2c7e369a82b b/.git/objects/d9/50655d5180bc080ff323a21ce6d2c7e369a82b
deleted file mode 100644
Binary files a/.git/objects/d9/50655d5180bc080ff323a21ce6d2c7e369a82b and /dev/null differ
diff --git a/.git/objects/da/b38cfd353bbdc462641543658ea8acd3eac19d b/.git/objects/da/b38cfd353bbdc462641543658ea8acd3eac19d
deleted file mode 100644
Binary files a/.git/objects/da/b38cfd353bbdc462641543658ea8acd3eac19d and /dev/null differ
diff --git a/.git/objects/da/f5ffbd0e64b1c1405b2bc670dd396d9c544a14 b/.git/objects/da/f5ffbd0e64b1c1405b2bc670dd396d9c544a14
deleted file mode 100644
Binary files a/.git/objects/da/f5ffbd0e64b1c1405b2bc670dd396d9c544a14 and /dev/null differ
diff --git a/.git/objects/dd/9b5e8fb8df41e00992dcbedf38edd8c0d25531 b/.git/objects/dd/9b5e8fb8df41e00992dcbedf38edd8c0d25531
deleted file mode 100644
Binary files a/.git/objects/dd/9b5e8fb8df41e00992dcbedf38edd8c0d25531 and /dev/null differ
diff --git a/.git/objects/de/16c2da1cc71609774e151a4e6034c07965db8c b/.git/objects/de/16c2da1cc71609774e151a4e6034c07965db8c
deleted file mode 100644
Binary files a/.git/objects/de/16c2da1cc71609774e151a4e6034c07965db8c and /dev/null differ
diff --git a/.git/objects/de/93e13807a1416af9226a89e7292c83ca984bb0 b/.git/objects/de/93e13807a1416af9226a89e7292c83ca984bb0
deleted file mode 100644
Binary files a/.git/objects/de/93e13807a1416af9226a89e7292c83ca984bb0 and /dev/null differ
diff --git a/.git/objects/df/0eddb596d9d9aff78156e3cae6300250de9155 b/.git/objects/df/0eddb596d9d9aff78156e3cae6300250de9155
deleted file mode 100644
Binary files a/.git/objects/df/0eddb596d9d9aff78156e3cae6300250de9155 and /dev/null differ
diff --git a/.git/objects/e0/bec6bc6198a44edb82561a2cfcafa703694828 b/.git/objects/e0/bec6bc6198a44edb82561a2cfcafa703694828
deleted file mode 100644
Binary files a/.git/objects/e0/bec6bc6198a44edb82561a2cfcafa703694828 and /dev/null differ
diff --git a/.git/objects/e4/e796e5dca1f617ad8ac77adbdfa8fc38a1f4d7 b/.git/objects/e4/e796e5dca1f617ad8ac77adbdfa8fc38a1f4d7
deleted file mode 100644
Binary files a/.git/objects/e4/e796e5dca1f617ad8ac77adbdfa8fc38a1f4d7 and /dev/null differ
diff --git a/.git/objects/e5/afddd93fed2971b278890973cea1740b8011a2 b/.git/objects/e5/afddd93fed2971b278890973cea1740b8011a2
deleted file mode 100644
Binary files a/.git/objects/e5/afddd93fed2971b278890973cea1740b8011a2 and /dev/null differ
diff --git a/.git/objects/e5/dc6abf9873d9eaf80c4e5d308832b23e5b18cd b/.git/objects/e5/dc6abf9873d9eaf80c4e5d308832b23e5b18cd
deleted file mode 100644
Binary files a/.git/objects/e5/dc6abf9873d9eaf80c4e5d308832b23e5b18cd and /dev/null differ
diff --git a/.git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 b/.git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391
deleted file mode 100644
Binary files a/.git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 and /dev/null differ
diff --git a/.git/objects/e8/1ac2e44e625bbd33673dc01092b64e2ca8679f b/.git/objects/e8/1ac2e44e625bbd33673dc01092b64e2ca8679f
deleted file mode 100644
Binary files a/.git/objects/e8/1ac2e44e625bbd33673dc01092b64e2ca8679f and /dev/null differ
diff --git a/.git/objects/e8/7a4422a7db2bee721ce1a88d5286ca1570d36a b/.git/objects/e8/7a4422a7db2bee721ce1a88d5286ca1570d36a
deleted file mode 100644
Binary files a/.git/objects/e8/7a4422a7db2bee721ce1a88d5286ca1570d36a and /dev/null differ
diff --git a/.git/objects/e8/a9b100db71a644cc6cf513f26b5f44a42d17ab b/.git/objects/e8/a9b100db71a644cc6cf513f26b5f44a42d17ab
deleted file mode 100644
Binary files a/.git/objects/e8/a9b100db71a644cc6cf513f26b5f44a42d17ab and /dev/null differ
diff --git a/.git/objects/e9/73b1dbbeec389cd09e15e3e2e5bf48df82b0aa b/.git/objects/e9/73b1dbbeec389cd09e15e3e2e5bf48df82b0aa
new file mode 100644
Binary files /dev/null and b/.git/objects/e9/73b1dbbeec389cd09e15e3e2e5bf48df82b0aa differ
diff --git a/.git/objects/ea/395fce07d46082dadd0432b33875394c27e62d b/.git/objects/ea/395fce07d46082dadd0432b33875394c27e62d
deleted file mode 100644
--- a/.git/objects/ea/395fce07d46082dadd0432b33875394c27e62d
+++ /dev/null
@@ -1,3 +0,0 @@
-x}SMÓ0å)ÿaN6îP±U»¢BWl÷°]àl;ÓÄªcGöDmøõ8in9)RôÞyó¡­Ow7O¼À)\H2¯Ê8úÎ+kznÈÆlGK.¸N.äýFlG_*¥Óä¥.»l[UãèQI4þb±yxéÁäÒ-óø°\=mWq´¨(·®÷Fï¹IïHÅÑ+CáÅNõGíë}ý9+¸ÒLÚ"Ö¶Àg½eNTúé`)Ê+Ñhk^Èú^0³®>ÿFq=»­-½ògv¾*Ñ/¸Öp@;¦x°n;ë ´à¹Ô·ZíÊ 4;ndÒ¦(¸GGÍ4ã®#Õ±±i²±iZ6+aË¼2{L¯ÁuhïèÙV¤Lv­Û'%¯±¤t[Ài_±D}
-/Ñ~ÍçØ»ÛSQzrÁ©ÝÏìnn`6d£Q§¶Û¿Ò;Ý¤¥Ê¡¤°^0±÷]¨
-÷uÉÒ¸;Ú µx³1ûØÑ3<&¥tp©a<mòaGéudó¢Íz¶¶rg«Qm}9òvâM5ç£×ÕLE[Æ|úmô¿³cmÈ_±:ù÷
diff --git a/.git/objects/eb/218fa1ac0207d8e1eecff6a59b9789e1bc7df4 b/.git/objects/eb/218fa1ac0207d8e1eecff6a59b9789e1bc7df4
deleted file mode 100644
Binary files a/.git/objects/eb/218fa1ac0207d8e1eecff6a59b9789e1bc7df4 and /dev/null differ
diff --git a/.git/objects/eb/a023660b513baa6686d113b0d5108a83448e4a b/.git/objects/eb/a023660b513baa6686d113b0d5108a83448e4a
deleted file mode 100644
Binary files a/.git/objects/eb/a023660b513baa6686d113b0d5108a83448e4a and /dev/null differ
diff --git a/.git/objects/ec/a1b33fcd1c0373e31d108a81dca8be042fd89c b/.git/objects/ec/a1b33fcd1c0373e31d108a81dca8be042fd89c
deleted file mode 100644
Binary files a/.git/objects/ec/a1b33fcd1c0373e31d108a81dca8be042fd89c and /dev/null differ
diff --git a/.git/objects/ed/eeef90bd35a9192643cb4fd5f6e108171fadb4 b/.git/objects/ed/eeef90bd35a9192643cb4fd5f6e108171fadb4
deleted file mode 100644
Binary files a/.git/objects/ed/eeef90bd35a9192643cb4fd5f6e108171fadb4 and /dev/null differ
diff --git a/.git/objects/ed/f08a80f0a001b76e1fd26def6ae46c7d2d0cad b/.git/objects/ed/f08a80f0a001b76e1fd26def6ae46c7d2d0cad
deleted file mode 100644
Binary files a/.git/objects/ed/f08a80f0a001b76e1fd26def6ae46c7d2d0cad and /dev/null differ
diff --git a/.git/objects/f2/3c5d037a1343dfb0fa58676c399164dc58f7ee b/.git/objects/f2/3c5d037a1343dfb0fa58676c399164dc58f7ee
deleted file mode 100644
Binary files a/.git/objects/f2/3c5d037a1343dfb0fa58676c399164dc58f7ee and /dev/null differ
diff --git a/.git/objects/f2/6ab906a9c670c4cf1c0d85fb9e2ba66049cd5b b/.git/objects/f2/6ab906a9c670c4cf1c0d85fb9e2ba66049cd5b
deleted file mode 100644
Binary files a/.git/objects/f2/6ab906a9c670c4cf1c0d85fb9e2ba66049cd5b and /dev/null differ
diff --git a/.git/objects/f3/073c846e4efaa3a1997750b01c078c36a14718 b/.git/objects/f3/073c846e4efaa3a1997750b01c078c36a14718
deleted file mode 100644
Binary files a/.git/objects/f3/073c846e4efaa3a1997750b01c078c36a14718 and /dev/null differ
diff --git a/.git/objects/f4/3a124452e69b4f2ef92bc8388796f2af9d88f3 b/.git/objects/f4/3a124452e69b4f2ef92bc8388796f2af9d88f3
new file mode 100644
Binary files /dev/null and b/.git/objects/f4/3a124452e69b4f2ef92bc8388796f2af9d88f3 differ
diff --git a/.git/objects/f6/1d5b2caadecbdcf54d2d0ad7b131ca2adcdc28 b/.git/objects/f6/1d5b2caadecbdcf54d2d0ad7b131ca2adcdc28
deleted file mode 100644
Binary files a/.git/objects/f6/1d5b2caadecbdcf54d2d0ad7b131ca2adcdc28 and /dev/null differ
diff --git a/.git/objects/f6/2e75a62487a4b516a960e045e193098208502c b/.git/objects/f6/2e75a62487a4b516a960e045e193098208502c
deleted file mode 100644
Binary files a/.git/objects/f6/2e75a62487a4b516a960e045e193098208502c and /dev/null differ
diff --git a/.git/objects/f6/e848cb8cee1bc156a72f65022e443a068cae23 b/.git/objects/f6/e848cb8cee1bc156a72f65022e443a068cae23
deleted file mode 100644
Binary files a/.git/objects/f6/e848cb8cee1bc156a72f65022e443a068cae23 and /dev/null differ
diff --git a/.git/objects/f8/b79cfde7e99e07a48a906d6b0f43517cdee2b3 b/.git/objects/f8/b79cfde7e99e07a48a906d6b0f43517cdee2b3
deleted file mode 100644
Binary files a/.git/objects/f8/b79cfde7e99e07a48a906d6b0f43517cdee2b3 and /dev/null differ
diff --git a/.git/objects/fb/f8eefabf8c61b21569f198ed873cc8558acd68 b/.git/objects/fb/f8eefabf8c61b21569f198ed873cc8558acd68
deleted file mode 100644
--- a/.git/objects/fb/f8eefabf8c61b21569f198ed873cc8558acd68
+++ /dev/null
@@ -1,3 +0,0 @@
-x¥SMOÜ0í9RþÃÓ´ié©BÊÒJe[	Zõ8ìm,9qðìÒíg¬Ó%R¥ú<oß¼±o¾ÁÑÑÛ7¯~îáüäËÙ÷³øz/Ò~é¬Zìþ£8ª4÷Jà³p·¥o²í¥ã(¡PÄQR
-âHV6w)¹ã=s,;];ÑfEÉÌ;0b
-¼`M_y+Høä\ÃÛã:¸º%«9i5âÎëÃ2~±Ýèó¡01ÇM1.£qQÏH¼2E²$bwbkÞFãZì£aUöåº@­yö ­´ÿ	òÞÙþkñw#éty£àDÕ(æòú'²ù!][]BÒßY¸ªé¼[{p@®°îsíæ+ä9Öm<^9¾O»h«"«½RX`­®É¦LÙ´ÈJÁ8Ñ÷üx8úéI#Ò¡¹µó×ó¶ç^_èøwóÁ¹ÖÏíÀ^2t-®Î%}K©0Hjí&3ÐHw\7¸ÿÛè3ß§ÝLf³Ù,Ýµ~ÚÏ¤ÈÝDV£©ÛGzÿ?­} ¹Cn
diff --git a/.git/objects/fe/46fa3927ab0bca60de756912a6d427b030a784 b/.git/objects/fe/46fa3927ab0bca60de756912a6d427b030a784
deleted file mode 100644
Binary files a/.git/objects/fe/46fa3927ab0bca60de756912a6d427b030a784 and /dev/null differ
diff --git a/.git/objects/fe/f7206a98cfe55dcb825c24d91f8179fa26d8ab b/.git/objects/fe/f7206a98cfe55dcb825c24d91f8179fa26d8ab
deleted file mode 100644
Binary files a/.git/objects/fe/f7206a98cfe55dcb825c24d91f8179fa26d8ab and /dev/null differ
diff --git a/.git/objects/ff/6a9f5d733cd98051951968bb686e9766cf0a44 b/.git/objects/ff/6a9f5d733cd98051951968bb686e9766cf0a44
deleted file mode 100644
Binary files a/.git/objects/ff/6a9f5d733cd98051951968bb686e9766cf0a44 and /dev/null differ
diff --git a/.git/objects/pack/pack-8d5add9960807749627b85586af48b5f93746c56.idx b/.git/objects/pack/pack-8d5add9960807749627b85586af48b5f93746c56.idx
new file mode 100644
Binary files /dev/null and b/.git/objects/pack/pack-8d5add9960807749627b85586af48b5f93746c56.idx differ
diff --git a/.git/objects/pack/pack-8d5add9960807749627b85586af48b5f93746c56.pack b/.git/objects/pack/pack-8d5add9960807749627b85586af48b5f93746c56.pack
new file mode 100644
Binary files /dev/null and b/.git/objects/pack/pack-8d5add9960807749627b85586af48b5f93746c56.pack differ
diff --git a/.git/packed-refs b/.git/packed-refs
new file mode 100644
--- /dev/null
+++ b/.git/packed-refs
@@ -0,0 +1,3 @@
+# pack-refs with: peeled fully-peeled 
+4c2353910734c89633d869f0ffccf8f565c93221 refs/remotes/origin/gh-pages
+fcf776ea249603cba21a7e735ac877482693b3e1 refs/remotes/origin/master
diff --git a/.git/refs/heads/master b/.git/refs/heads/master
--- a/.git/refs/heads/master
+++ b/.git/refs/heads/master
@@ -1,1 +1,1 @@
-cec17859d0a08acd01b9297297b32881bc4f7104
+26aa433ce02a16e4f0887189d56ca66cc0fab283
diff --git a/.git/refs/remotes/origin/HEAD b/.git/refs/remotes/origin/HEAD
new file mode 100644
--- /dev/null
+++ b/.git/refs/remotes/origin/HEAD
@@ -0,0 +1,1 @@
+ref: refs/remotes/origin/master
diff --git a/.git/refs/remotes/origin/gh-pages b/.git/refs/remotes/origin/gh-pages
deleted file mode 100644
--- a/.git/refs/remotes/origin/gh-pages
+++ /dev/null
@@ -1,1 +0,0 @@
-4c2353910734c89633d869f0ffccf8f565c93221
diff --git a/.git/refs/remotes/origin/master b/.git/refs/remotes/origin/master
--- a/.git/refs/remotes/origin/master
+++ b/.git/refs/remotes/origin/master
@@ -1,1 +1,1 @@
-cec17859d0a08acd01b9297297b32881bc4f7104
+26aa433ce02a16e4f0887189d56ca66cc0fab283
diff --git a/.gitignore~ b/.gitignore~
deleted file mode 100644
--- a/.gitignore~
+++ /dev/null
@@ -1,6 +0,0 @@
-*.hi
-*.o
-example
-dist
-docs
-gendocs.sh
diff --git a/Ketchup.cabal b/Ketchup.cabal
--- a/Ketchup.cabal
+++ b/Ketchup.cabal
@@ -1,5 +1,5 @@
 Name:           Ketchup
-Version:        0.4.1
+Version:        0.4.2
 Cabal-Version:  >= 1.6
 Build-Type:     Simple
 License:        MIT
@@ -10,7 +10,7 @@
 Category:       Web, Ketchup
 Synopsis:       A super small web framework for those who don't like big and fancy codebases
 Description:
-    Ketchup is a very small HTTP server implementation, currently under 400 LoC total!
+    Ketchup is a very small HTTP server implementation, currently under 400 LoC (for the whole thing)!
     .
     Ketchup is also made to be as modular and embeddable as possible, if you want a cabal-free Haskell app, just take those two/three files you need and put it in your project!
     .
@@ -18,9 +18,9 @@
     .
     * Basic httpd functionality (IPV4 only for now)
     .
-    * URL Routing with parameters (ie. \`/user/:name/\`)
+    * URL Routing with parameters (ie. \/user\/:name\/)
     .
-    * Static file handler (ie. \`static \".\"\` as route/handler)
+    * Static file handler (ie. static \".\" as route/handler)
     .
     * Basic Auth (please use it over a HTTPS reverse proxy)
     .
diff --git a/Ketchup.cabal~ b/Ketchup.cabal~
deleted file mode 100644
--- a/Ketchup.cabal~
+++ /dev/null
@@ -1,62 +0,0 @@
-Name:           Ketchup
-Version:        0.4.0
-Cabal-Version:  >= 1.6
-Build-Type:     Simple
-License:        MIT
-License-File:   LICENSE
-Author:         Alessandro Gatti
-Maintainer:     zikyky@gmail.com
-Homepage:       https://github.com/Hamcha/Ketchup
-Category:       Web, Ketchup
-Synopsis:       A super small web framework for those who don't like big and fancy codebases
-Description:
-    Ketchup is a very small HTTP server implementation, currently under 400 LoC total!
-    .
-    Ketchup is also made to be as modular and embeddable as possible, if you want a cabal-free Haskell app, just take those two/three files you need and put it in your project!
-    .
-    Currently Ketchup comes with:
-    .
-    * Basic httpd functionality (IPV4 only for now)
-    .
-    * URL Routing with parameters (ie. \`/user/:name/\`)
-    .
-    * Static file handler (ie. \`static \".\"\` as route/handler)
-    .
-    * Basic Auth (please use it over a HTTPS reverse proxy)
-    .
-    Dependencies
-    .
-    The core parts of Ketchup are all depedency free, that includes Ketchup.Httpd and Ketchup.Utils (and to a certain extent, Ketchup.Chunked).
-    The dependencies required are for the following modules:
-    .
-    * Ketchup.Static (uses mime-types)
-    .
-    * Ketchup.Auth (uses base64-bytestring)
-    .
-
-Extra-Source-Files:
-  example.hs,
-  LICENSE,
-  README.md
-
-Library
-  Exposed-Modules:
-    Ketchup.Auth
-    Ketchup.Chunked
-    Ketchup.Httpd
-    Ketchup.Routing
-    Ketchup.Static
-    Ketchup.Utils
-
-  Build-Depends:
-    base               ==4.*,
-    base64-bytestring   <1.1.0.0,
-    bytestring         >=0.9 && <0.11,
-    directory           <1.3,
-    mime-types          <0.2,
-    network             <2.5,
-    text                <2.0
-
-Source-Repository head
-  type:       git
-  location:   git://github.com/Hamcha/Ketchup.git
diff --git a/Ketchup/Auth.hi b/Ketchup/Auth.hi
deleted file mode 100644
Binary files a/Ketchup/Auth.hi and /dev/null differ
diff --git a/Ketchup/Auth.o b/Ketchup/Auth.o
deleted file mode 100644
Binary files a/Ketchup/Auth.o and /dev/null differ
diff --git a/Ketchup/Chunked.hi b/Ketchup/Chunked.hi
deleted file mode 100644
Binary files a/Ketchup/Chunked.hi and /dev/null differ
diff --git a/Ketchup/Chunked.o b/Ketchup/Chunked.o
deleted file mode 100644
Binary files a/Ketchup/Chunked.o and /dev/null differ
diff --git a/Ketchup/Httpd.hi b/Ketchup/Httpd.hi
deleted file mode 100644
Binary files a/Ketchup/Httpd.hi and /dev/null differ
diff --git a/Ketchup/Httpd.hs b/Ketchup/Httpd.hs
--- a/Ketchup/Httpd.hs
+++ b/Ketchup/Httpd.hs
@@ -36,14 +36,6 @@
     values   = B.split ',' $ (trim . last) items
     items    = B.split ':' line
 
--- Parses request body
-parseRequestBody :: B.ByteString -> [(B.ByteString, B.ByteString)]
-parseRequestBody body =
-    map sep items
-    where
-    sep   = breakBS "="
-    items = B.split '&' body
-
 -- Gets all request lines
 getRequest :: Socket -> IO ([B.ByteString], B.ByteString)
 getRequest client = do
@@ -58,8 +50,7 @@
     where
     [met, ur, ver] = B.words $ head headers -- First line is METHOD URI VERSION
     heads   = map parseRequestLine $ tail headers
-    body    = snd reqlines
-    headers = fst reqlines
+    (body, headers) = reqlines
 
 -- Handles each client request
 handleRequest :: Socket -> Handler -> IO ()
@@ -79,12 +70,10 @@
 
 -- Creates Acceptor pools
 createAcceptorPool :: Socket -> Int -> Handler -> IO ()
-createAcceptorPool sock max cback =
-    case max of
-        0 -> acceptAll sock cback
-        x -> do
-            forkIO $ acceptAll sock cback
-            createAcceptorPool sock (x-1) cback
+createAcceptorPool sock 0   cback = acceptAll sock cback
+createAcceptorPool sock max cback = do
+    forkIO (acceptAll sock cback)
+    createAcceptorPool sock (max-1) cback
 
 -- Gets host from hostname string
 getHostaddr :: String -> IO NS.HostAddress
diff --git a/Ketchup/Httpd.o b/Ketchup/Httpd.o
deleted file mode 100644
Binary files a/Ketchup/Httpd.o and /dev/null differ
diff --git a/Ketchup/Routing.hi b/Ketchup/Routing.hi
deleted file mode 100644
Binary files a/Ketchup/Routing.hi and /dev/null differ
diff --git a/Ketchup/Routing.hs b/Ketchup/Routing.hs
--- a/Ketchup/Routing.hs
+++ b/Ketchup/Routing.hs
@@ -27,9 +27,7 @@
     | isMatch   = (snd r) handle request (get params)
     | otherwise = route routes handle request
     where
-    isMatch = fst matched
-    params  = snd matched
-    matched = (fst r) (uri request)
+    (isMatch, params) = (fst r) (uri request)
 
 -- |Wrap a handler in a route
 -- Lets you use a handler (no parameters) as a route
@@ -41,9 +39,7 @@
 match template url =
     (isMatch, Parameters params)
     where
-    isMatch  = fst parsed
-    params   = snd parsed
-    parsed   = parse urlparts temparts []
+    (isMatch, params) = parse urlparts temparts []
     urlparts = B.split '/' url
     temparts = B.split '/' template
 
diff --git a/Ketchup/Routing.o b/Ketchup/Routing.o
deleted file mode 100644
Binary files a/Ketchup/Routing.o and /dev/null differ
diff --git a/Ketchup/Static.hi b/Ketchup/Static.hi
deleted file mode 100644
Binary files a/Ketchup/Static.hi and /dev/null differ
diff --git a/Ketchup/Static.hs b/Ketchup/Static.hs
--- a/Ketchup/Static.hs
+++ b/Ketchup/Static.hs
@@ -15,23 +15,23 @@
 -- Takes a directory and returns a route
 static :: B.ByteString -- ^ Path to serve static files from
           -> Handler
-static folder hnd req = do
-    let path = B.concat [folder, uri req]
-    let sane = sanecheck path
-    let strPath = B.unpack path
-    doesExist <- doesFileExist strPath
-    case and [sane, doesExist] of
-        True  -> B.readFile strPath
-                 >>= sendReply hnd 200 [("Content-Type",[mime])]
-                 where
-                 mime = defaultMimeLookup $ decodeUtf8 fname
-                 fname = last $ B.split '/' path
-        False -> sendNotFound hnd
+static folder hnd req =
+    doesFileExist strPath
+    >>= \exists ->
+        case and [sanecheck path, exists] of
+            False -> sendNotFound hnd
+            True  -> B.readFile strPath
+                     >>= sendReply hnd 200 [("Content-Type",[mime])]
+                     where
+                     mime = defaultMimeLookup $ decodeUtf8 fname
+                     fname = last $ B.split '/' path
+    where
+    strPath = B.unpack path
+    path    = B.concat [folder, uri req]
 
 sanecheck :: B.ByteString -> Bool
 sanecheck url =
-    and checks
+    and [parentcheck]
     where
-    checks = [parentcheck]
     parentcheck = length (filter (== "..") pieces) < 1
     pieces = B.split '/' url
diff --git a/Ketchup/Static.o b/Ketchup/Static.o
deleted file mode 100644
Binary files a/Ketchup/Static.o and /dev/null differ
diff --git a/Ketchup/Utils.hi b/Ketchup/Utils.hi
deleted file mode 100644
Binary files a/Ketchup/Utils.hi and /dev/null differ
diff --git a/Ketchup/Utils.hs b/Ketchup/Utils.hs
--- a/Ketchup/Utils.hs
+++ b/Ketchup/Utils.hs
@@ -22,37 +22,34 @@
 -- Returns status message from a given status id
 statusMsg :: Int          -- ^ Status code (ex. 404)
           -> B.ByteString -- ^ Status message (ex. "404 Not Found")
-statusMsg stat
-    -- 200 Success
-    | stat == 200 = "200 OK"
-    | stat == 201 = "201 Created"
-    | stat == 204 = "204 No Content"
-    -- 400 Client Errors
-    | stat == 400 = "400 Bad Request"
-    | stat == 401 = "401 Unauthorized"
-    | stat == 402 = "402 Payment Required"
-    | stat == 403 = "403 Forbidden"
-    | stat == 404 = "404 Not Found"
-    | stat == 405 = "405 Method Not Allowed"
-    | stat == 410 = "410 Gone"
-    -- 500 Server Errors
-    | stat == 500 = "500 Internal Server Error"
-    | stat == 501 = "501 Not Implemented"
-    | stat == 502 = "502 Bad Gateway"
-    | stat == 503 = "503 Service Unavailable"
-    | otherwise   = "500 Internal Server Error"
-
--- Premade HTTP replies
+-- 200 Success
+statusMsg 200 = "200 OK"
+statusMsg 201 = "201 Created"
+statusMsg 204 = "204 No Content"
+-- 400 Client Errors
+statusMsg 400 = "400 Bad Request"
+statusMsg 401 = "401 Unauthorized"
+statusMsg 402 = "402 Payment Required"
+statusMsg 403 = "403 Forbidden"
+statusMsg 404 = "404 Not Found"
+statusMsg 405 = "405 Method Not Allowed"
+statusMsg 410 = "410 Gone"
+-- 500 Server Errors
+statusMsg 500 = "500 Internal Server Error"
+statusMsg 501 = "501 Not Implemented"
+statusMsg 502 = "502 Bad Gateway"
+statusMsg 503 = "503 Service Unavailable"
+statusMsg x   = "500 Internal Server Error"
 
 -- |Send 400 Bad Request error
 sendBadRequest :: Socket -> IO ()
 sendBadRequest client =
-    sendReply client 400 [("Content-Type",["text/plain"])] "400 Bad Request!\n"
+    sendReply client 400 [("Content-Type",["text/plain"])] "400 Bad Request\n"
 
 -- |Send 404 Not Found error
 sendNotFound :: Socket -> IO ()
 sendNotFound client =
-    sendReply client 404 [("Content-Type",["text/plain"])] "404 Not Found!\n"
+    sendReply client 404 [("Content-Type",["text/plain"])] "404 Not Found\n"
 
 -- |Send a HTTP reply
 -- Sends a reply with the given parameters
@@ -64,20 +61,18 @@
 sendReply client status headers body =
     sendAll client reply
     where
-    reply = B.concat
-        [ "HTTP/1.1 ", statusMsg status,"\r\n"
-        , "Content-Length: ", B.pack $ show $ B.length body, "\r\n"
-        , "Connection: close\r\n", heads, "\r\n", body]
+    reply = B.concat [ "HTTP/1.1 ", statusMsg status,"\r\n"
+                     , "Content-Length: ", B.pack $ show $ B.length body, "\r\n"
+                     , "Connection: close\r\n", heads, "\r\n", body]
     -- Turn ("a", ["b", "c"]) headers into "a: b,c"
-    heads = B.concat $ map toHeader headers
-    toHeader x = B.concat [fst x, ": "
-                          ,B.concat $ List.intersperse "," $ snd x
-                          ,"\r\n"]
+    heads      = B.concat $ map toHeader headers
+    toHeader x = B.concat [ fst x, ": "
+                          , B.concat $ List.intersperse "," $ snd x
+                          , "\r\n"]
 
 -- |Trim whitespace from headers
 trim :: B.ByteString -> B.ByteString
-trim = f . f
-    where f = B.reverse . B.dropWhile isSpace
+trim = f . f where f = B.reverse . B.dropWhile isSpace
 
 -- |ByteString breakSubstring wrapper that drops delimiters
 breakBS :: B.ByteString -> B.ByteString -> (B.ByteString, B.ByteString)
@@ -98,5 +93,5 @@
 
 -- |Maybe a -> a with fallback (if Nothing)
 fallback :: Maybe a -> a -> a
-fallback (Just value) fallback = value
-fallback Nothing      fallback = fallback
+fallback (Just x) fallback = x
+fallback Nothing  fallback = fallback
diff --git a/Ketchup/Utils.o b/Ketchup/Utils.o
deleted file mode 100644
Binary files a/Ketchup/Utils.o and /dev/null differ
diff --git a/docs/.git/COMMIT_EDITMSG b/docs/.git/COMMIT_EDITMSG
deleted file mode 100644
--- a/docs/.git/COMMIT_EDITMSG
+++ /dev/null
@@ -1,221 +0,0 @@
-Updated docs to 0.3
-# Please enter the commit message for your changes. Lines starting
-# with '#' will be ignored, and an empty message aborts the commit.
-# On branch gh-pages
-# Your branch is up-to-date with 'origin/gh-pages'.
-#
-# Changes to be committed:
-#	new file:   Ketchup-Auth.html
-#	modified:   Ketchup-Httpd.html
-#	modified:   Ketchup-Routing.html
-#	modified:   Ketchup-Utils.html
-#	modified:   doc-index.html
-#	modified:   index-frames.html
-#	modified:   index.html
-#	modified:   main.txt
-#	new file:   mini_Ketchup-Auth.html
-#	modified:   mini_Ketchup-Routing.html
-#	modified:   mini_Ketchup-Utils.html
-#
-# ------------------------ >8 ------------------------
-# Do not touch the line above.
-# Everything below will be removed.
-diff --git a/Ketchup-Auth.html b/Ketchup-Auth.html
-new file mode 100644
-index 0000000..ff6a9f5
---- /dev/null
-+++ b/Ketchup-Auth.html
-@@ -0,0 +1,8 @@
-+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Auth</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-+window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Auth.html");};
-+//]]>
-+</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Auth</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:basicAuth">basicAuth</a> &#8759; [(ByteString, ByteString)] &#8594; ByteString &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:basicAuth" class="def">basicAuth</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; [(ByteString, ByteString)]</td><td class="doc"><p>List of (Username, Password)
-+</p></td></tr><tr><td class="src">&#8594; ByteString</td><td class="doc"><p>Authentication Realm
-+</p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc"><p>Success Handler
-+</p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Performs HTTP Basic Auth
-+</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
-\ No newline at end of file
-diff --git a/Ketchup-Httpd.html b/Ketchup-Httpd.html
-index b5c49f7..5c7dd67 100644
---- a/Ketchup-Httpd.html
-+++ b/Ketchup-Httpd.html
-@@ -1,14 +1,14 @@
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Httpd</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
- window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Httpd.html");};
- //]]>
--</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Httpd</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span>  <a href="#t:HTTPRequest">HTTPRequest</a>  = <a href="#v:HTTPRequest">HTTPRequest</a> {<ul class="subs"><li><a href="#v:method">method</a> &#8759; ByteString</li><li><a href="#v:uri">uri</a> &#8759; ByteString</li><li><a href="#v:httpver">httpver</a> &#8759; ByteString</li><li><a href="#v:headers">headers</a> &#8759; <a href="Ketchup-Httpd.html#t:Headers">Headers</a></li><li><a href="#v:body">body</a> &#8759; ByteString</li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:Headers">Headers</a> = Map ByteString [ByteString]</li><li class="src short"><span class="keyword">type</span> <a href="#t:Handler">Handler</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; IO ()</li><li class="src short"><a href="#v:listenHTTP">listenHTTP</a> &#8759; String &#8594; PortNumber &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; IO ()</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:HTTPRequest" class="def">HTTPRequest</a>  </p><div class="doc"><p>HTTP Request type
-+</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Httpd</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span>  <a href="#t:HTTPRequest">HTTPRequest</a>  = <a href="#v:HTTPRequest">HTTPRequest</a> {<ul class="subs"><li><a href="#v:method">method</a> &#8759; ByteString</li><li><a href="#v:uri">uri</a> &#8759; ByteString</li><li><a href="#v:httpver">httpver</a> &#8759; ByteString</li><li><a href="#v:headers">headers</a> &#8759; <a href="Ketchup-Httpd.html#t:Headers">Headers</a></li><li><a href="#v:body">body</a> &#8759; ByteString</li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:Headers">Headers</a> = [(ByteString, [ByteString])]</li><li class="src short"><span class="keyword">type</span> <a href="#t:Handler">Handler</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; IO ()</li><li class="src short"><a href="#v:listenHTTP">listenHTTP</a> &#8759; String &#8594; PortNumber &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; IO ()</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:HTTPRequest" class="def">HTTPRequest</a>  </p><div class="doc"><p>HTTP Request type
-  This holds a complete HTTP request
- </p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:HTTPRequest" class="def">HTTPRequest</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:method" class="def">method</a> &#8759; ByteString</dt><dd class="doc"><p>Get HTTP Request Method (GET, POST etc.)
- </p></dd><dt class="src"><a name="v:uri" class="def">uri</a> &#8759; ByteString</dt><dd class="doc"><p>Get Request URI
- </p></dd><dt class="src"><a name="v:httpver" class="def">httpver</a> &#8759; ByteString</dt><dd class="doc"><p>Get HTTP Version
- </p></dd><dt class="src"><a name="v:headers" class="def">headers</a> &#8759; <a href="Ketchup-Httpd.html#t:Headers">Headers</a></dt><dd class="doc"><p>Get HTTP Headers (header, [values])
- </p></dd><dt class="src"><a name="v:body" class="def">body</a> &#8759; ByteString</dt><dd class="doc"><p>Get HTTP Post body (raw string)
--</p></dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:HTTPRequest" class="caption collapser" onclick="toggleSection('i:HTTPRequest')">Instances</p><div id="section.i:HTTPRequest" class="show"><table><tr><td class="src">Show <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Headers" class="def">Headers</a> = Map ByteString [ByteString]</p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Handler" class="def">Handler</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; IO ()</p></div><div class="top"><p class="src"><a name="v:listenHTTP" class="def">listenHTTP</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; String</td><td class="doc"><p>Address to bind (ie. <a href="*.html">*</a>)
-+</p></dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:HTTPRequest" class="caption collapser" onclick="toggleSection('i:HTTPRequest')">Instances</p><div id="section.i:HTTPRequest" class="show"><table><tr><td class="src">Show <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Headers" class="def">Headers</a> = [(ByteString, [ByteString])]</p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Handler" class="def">Handler</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; IO ()</p></div><div class="top"><p class="src"><a name="v:listenHTTP" class="def">listenHTTP</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; String</td><td class="doc"><p>Address to bind (ie. <a href="*.html">*</a>)
- </p></td></tr><tr><td class="src">&#8594; PortNumber</td><td class="doc"><p>Port to listen on
- </p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc"><p>Route function to call
- </p></td></tr><tr><td class="src">&#8594; IO ()</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Listens for incoming HTTP request
-diff --git a/Ketchup-Routing.html b/Ketchup-Routing.html
-index c8298c8..6350f4f 100644
---- a/Ketchup-Routing.html
-+++ b/Ketchup-Routing.html
-@@ -1,7 +1,7 @@
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Routing</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
- window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Routing.html");};
- //]]>
--</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Routing</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">type</span> <a href="#t:Route">Route</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; <a href="Ketchup-Routing.html#t:Parameters">Parameters</a> &#8594; IO ()</li><li class="src short"><span class="keyword">type</span> <a href="#t:Parameters">Parameters</a> = Map ByteString ByteString</li><li class="src short"><a href="#v:route">route</a> &#8759; [(ByteString, <a href="Ketchup-Routing.html#t:Route">Route</a>)] &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></li><li class="src short"><a href="#v:useHandler">useHandler</a> &#8759; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; <a href="Ketchup-Routing.html#t:Route">Route</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Route" class="def">Route</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; <a href="Ketchup-Routing.html#t:Parameters">Parameters</a> &#8594; IO ()</p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Parameters" class="def">Parameters</a> = Map ByteString ByteString</p></div><div class="top"><p class="src"><a name="v:route" class="def">route</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; [(ByteString, <a href="Ketchup-Routing.html#t:Route">Route</a>)]</td><td class="doc"><p>Routes
-+</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Routing</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">type</span> <a href="#t:Route">Route</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; (ByteString &#8594; Maybe ByteString) &#8594; IO ()</li><li class="src short"><a href="#v:route">route</a> &#8759; [(ByteString, <a href="Ketchup-Routing.html#t:Route">Route</a>)] &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></li><li class="src short"><a href="#v:useHandler">useHandler</a> &#8759; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; <a href="Ketchup-Routing.html#t:Route">Route</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Route" class="def">Route</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; (ByteString &#8594; Maybe ByteString) &#8594; IO ()</p></div><div class="top"><p class="src"><a name="v:route" class="def">route</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; [(ByteString, <a href="Ketchup-Routing.html#t:Route">Route</a>)]</td><td class="doc"><p>Routes
- </p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Router function
-  Takes a list of routes and iterates through them for every requeust
- </p></div></div><div class="top"><p class="src"><a name="v:useHandler" class="def">useHandler</a> &#8759; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; <a href="Ketchup-Routing.html#t:Route">Route</a></p><div class="doc"><p>Wrap a handler in a route
-diff --git a/Ketchup-Utils.html b/Ketchup-Utils.html
-index d7b0897..0ef0bb4 100644
---- a/Ketchup-Utils.html
-+++ b/Ketchup-Utils.html
-@@ -1,9 +1,9 @@
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Utils</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
- window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Utils.html");};
- //]]>
--</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Utils</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:trim">trim</a> &#8759; ByteString &#8594; ByteString</li><li class="src short"><a href="#v:breakBS">breakBS</a> &#8759; ByteString &#8594; ByteString &#8594; (ByteString, ByteString)</li><li class="src short"><a href="#v:parseBody">parseBody</a> &#8759; ByteString &#8594; Map ByteString ByteString</li><li class="src short"><a href="#v:sendReply">sendReply</a> &#8759; Socket &#8594; Int &#8594; [(ByteString, [ByteString])] &#8594; ByteString &#8594; IO ()</li><li class="src short"><a href="#v:sendBadRequest">sendBadRequest</a> &#8759; Socket &#8594; IO ()</li><li class="src short"><a href="#v:sendNotFound">sendNotFound</a> &#8759; Socket &#8594; IO ()</li><li class="src short"><a href="#v:statusMsg">statusMsg</a> &#8759; Int &#8594; ByteString</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:trim" class="def">trim</a> &#8759; ByteString &#8594; ByteString</p><div class="doc"><p>Trim whitespace from headers
-+</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Utils</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:trim">trim</a> &#8759; ByteString &#8594; ByteString</li><li class="src short"><a href="#v:breakBS">breakBS</a> &#8759; ByteString &#8594; ByteString &#8594; (ByteString, ByteString)</li><li class="src short"><a href="#v:fallback">fallback</a> &#8759;  Maybe a &#8594; a &#8594; a</li><li class="src short"><a href="#v:parseBody">parseBody</a> &#8759; ByteString &#8594; [(ByteString, ByteString)]</li><li class="src short"><a href="#v:sendReply">sendReply</a> &#8759; Socket &#8594; Int &#8594; [(ByteString, [ByteString])] &#8594; ByteString &#8594; IO ()</li><li class="src short"><a href="#v:sendBadRequest">sendBadRequest</a> &#8759; Socket &#8594; IO ()</li><li class="src short"><a href="#v:sendNotFound">sendNotFound</a> &#8759; Socket &#8594; IO ()</li><li class="src short"><a href="#v:statusMsg">statusMsg</a> &#8759; Int &#8594; ByteString</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:trim" class="def">trim</a> &#8759; ByteString &#8594; ByteString</p><div class="doc"><p>Trim whitespace from headers
- </p></div></div><div class="top"><p class="src"><a name="v:breakBS" class="def">breakBS</a> &#8759; ByteString &#8594; ByteString &#8594; (ByteString, ByteString)</p><div class="doc"><p>ByteString breakSubstring wrapper that drops delimiters
--</p></div></div><div class="top"><p class="src"><a name="v:parseBody" class="def">parseBody</a> &#8759; ByteString &#8594; Map ByteString ByteString</p><div class="doc"><p>Parse a URL-encoded Request
-+</p></div></div><div class="top"><p class="src"><a name="v:fallback" class="def">fallback</a> &#8759;  Maybe a &#8594; a &#8594; a</p></div><div class="top"><p class="src"><a name="v:parseBody" class="def">parseBody</a> &#8759; ByteString &#8594; [(ByteString, ByteString)]</p><div class="doc"><p>Parse a URL-encoded Request
- </p></div></div><div class="top"><p class="src"><a name="v:sendReply" class="def">sendReply</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; Socket</td><td class="doc"><p>Socket to write to
- </p></td></tr><tr><td class="src">&#8594; Int</td><td class="doc"><p>Status Code to send
- </p></td></tr><tr><td class="src">&#8594; [(ByteString, [ByteString])]</td><td class="doc"><p>HTTP headers (<a href="Header.html">Header</a>,[<a href="value1.html">value1</a>, <a href="value2.html">value2</a>])
-diff --git a/doc-index.html b/doc-index.html
-index ad296ab..e5dc6ab 100644
---- a/doc-index.html
-+++ b/doc-index.html
-@@ -1,4 +1,4 @@
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title> (Index)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
- window.onload = function () {pageLoad();};
- //]]>
--</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="index"><p class="caption">Index</p><table><tr><td class="src">body</td><td class="module"><a href="Ketchup-Httpd.html#v:body">Ketchup.Httpd</a></td></tr><tr><td class="src">breakBS</td><td class="module"><a href="Ketchup-Utils.html#v:breakBS">Ketchup.Utils</a></td></tr><tr><td class="src">chunk</td><td class="module"><a href="Ketchup-Chunked.html#v:chunk">Ketchup.Chunked</a></td></tr><tr><td class="src">chunkHeaders</td><td class="module"><a href="Ketchup-Chunked.html#v:chunkHeaders">Ketchup.Chunked</a></td></tr><tr><td class="src">endchunk</td><td class="module"><a href="Ketchup-Chunked.html#v:endchunk">Ketchup.Chunked</a></td></tr><tr><td class="src">Handler</td><td class="module"><a href="Ketchup-Httpd.html#t:Handler">Ketchup.Httpd</a></td></tr><tr><td class="src">Headers</td><td class="module"><a href="Ketchup-Httpd.html#t:Headers">Ketchup.Httpd</a></td></tr><tr><td class="src">headers</td><td class="module"><a href="Ketchup-Httpd.html#v:headers">Ketchup.Httpd</a></td></tr><tr><td class="src">HTTPRequest</td><td>&nbsp;</td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ketchup-Httpd.html#t:HTTPRequest">Ketchup.Httpd</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ketchup-Httpd.html#v:HTTPRequest">Ketchup.Httpd</a></td></tr><tr><td class="src">httpver</td><td class="module"><a href="Ketchup-Httpd.html#v:httpver">Ketchup.Httpd</a></td></tr><tr><td class="src">listenHTTP</td><td class="module"><a href="Ketchup-Httpd.html#v:listenHTTP">Ketchup.Httpd</a></td></tr><tr><td class="src">method</td><td class="module"><a href="Ketchup-Httpd.html#v:method">Ketchup.Httpd</a></td></tr><tr><td class="src">Parameters</td><td class="module"><a href="Ketchup-Routing.html#t:Parameters">Ketchup.Routing</a></td></tr><tr><td class="src">parseBody</td><td class="module"><a href="Ketchup-Utils.html#v:parseBody">Ketchup.Utils</a></td></tr><tr><td class="src">Route</td><td class="module"><a href="Ketchup-Routing.html#t:Route">Ketchup.Routing</a></td></tr><tr><td class="src">route</td><td class="module"><a href="Ketchup-Routing.html#v:route">Ketchup.Routing</a></td></tr><tr><td class="src">sendBadRequest</td><td class="module"><a href="Ketchup-Utils.html#v:sendBadRequest">Ketchup.Utils</a></td></tr><tr><td class="src">sendNotFound</td><td class="module"><a href="Ketchup-Utils.html#v:sendNotFound">Ketchup.Utils</a></td></tr><tr><td class="src">sendReply</td><td class="module"><a href="Ketchup-Utils.html#v:sendReply">Ketchup.Utils</a></td></tr><tr><td class="src">static</td><td class="module"><a href="Ketchup-Static.html#v:static">Ketchup.Static</a></td></tr><tr><td class="src">statusMsg</td><td class="module"><a href="Ketchup-Utils.html#v:statusMsg">Ketchup.Utils</a></td></tr><tr><td class="src">trim</td><td class="module"><a href="Ketchup-Utils.html#v:trim">Ketchup.Utils</a></td></tr><tr><td class="src">uri</td><td class="module"><a href="Ketchup-Httpd.html#v:uri">Ketchup.Httpd</a></td></tr><tr><td class="src">useHandler</td><td class="module"><a href="Ketchup-Routing.html#v:useHandler">Ketchup.Routing</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
-\ No newline at end of file
-+</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="index"><p class="caption">Index</p><table><tr><td class="src">basicAuth</td><td class="module"><a href="Ketchup-Auth.html#v:basicAuth">Ketchup.Auth</a></td></tr><tr><td class="src">body</td><td class="module"><a href="Ketchup-Httpd.html#v:body">Ketchup.Httpd</a></td></tr><tr><td class="src">breakBS</td><td class="module"><a href="Ketchup-Utils.html#v:breakBS">Ketchup.Utils</a></td></tr><tr><td class="src">chunk</td><td class="module"><a href="Ketchup-Chunked.html#v:chunk">Ketchup.Chunked</a></td></tr><tr><td class="src">chunkHeaders</td><td class="module"><a href="Ketchup-Chunked.html#v:chunkHeaders">Ketchup.Chunked</a></td></tr><tr><td class="src">endchunk</td><td class="module"><a href="Ketchup-Chunked.html#v:endchunk">Ketchup.Chunked</a></td></tr><tr><td class="src">fallback</td><td class="module"><a href="Ketchup-Utils.html#v:fallback">Ketchup.Utils</a></td></tr><tr><td class="src">Handler</td><td class="module"><a href="Ketchup-Httpd.html#t:Handler">Ketchup.Httpd</a></td></tr><tr><td class="src">Headers</td><td class="module"><a href="Ketchup-Httpd.html#t:Headers">Ketchup.Httpd</a></td></tr><tr><td class="src">headers</td><td class="module"><a href="Ketchup-Httpd.html#v:headers">Ketchup.Httpd</a></td></tr><tr><td class="src">HTTPRequest</td><td>&nbsp;</td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ketchup-Httpd.html#t:HTTPRequest">Ketchup.Httpd</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ketchup-Httpd.html#v:HTTPRequest">Ketchup.Httpd</a></td></tr><tr><td class="src">httpver</td><td class="module"><a href="Ketchup-Httpd.html#v:httpver">Ketchup.Httpd</a></td></tr><tr><td class="src">listenHTTP</td><td class="module"><a href="Ketchup-Httpd.html#v:listenHTTP">Ketchup.Httpd</a></td></tr><tr><td class="src">method</td><td class="module"><a href="Ketchup-Httpd.html#v:method">Ketchup.Httpd</a></td></tr><tr><td class="src">parseBody</td><td class="module"><a href="Ketchup-Utils.html#v:parseBody">Ketchup.Utils</a></td></tr><tr><td class="src">Route</td><td class="module"><a href="Ketchup-Routing.html#t:Route">Ketchup.Routing</a></td></tr><tr><td class="src">route</td><td class="module"><a href="Ketchup-Routing.html#v:route">Ketchup.Routing</a></td></tr><tr><td class="src">sendBadRequest</td><td class="module"><a href="Ketchup-Utils.html#v:sendBadRequest">Ketchup.Utils</a></td></tr><tr><td class="src">sendNotFound</td><td class="module"><a href="Ketchup-Utils.html#v:sendNotFound">Ketchup.Utils</a></td></tr><tr><td class="src">sendReply</td><td class="module"><a href="Ketchup-Utils.html#v:sendReply">Ketchup.Utils</a></td></tr><tr><td class="src">static</td><td class="module"><a href="Ketchup-Static.html#v:static">Ketchup.Static</a></td></tr><tr><td class="src">statusMsg</td><td class="module"><a href="Ketchup-Utils.html#v:statusMsg">Ketchup.Utils</a></td></tr><tr><td class="src">trim</td><td class="module"><a href="Ketchup-Utils.html#v:trim">Ketchup.Utils</a></td></tr><tr><td class="src">uri</td><td class="module"><a href="Ketchup-Httpd.html#v:uri">Ketchup.Httpd</a></td></tr><tr><td class="src">useHandler</td><td class="module"><a href="Ketchup-Routing.html#v:useHandler">Ketchup.Routing</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
-\ No newline at end of file
-diff --git a/index-frames.html b/index-frames.html
-index 9de2c9d..8766065 100644
---- a/index-frames.html
-+++ b/index-frames.html
-@@ -1,4 +1,4 @@
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title></title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
- window.onload = function () {pageLoad();};
- //]]>
--</script></head><body id="mini"><div id="module-list"><p class="caption">Modules</p><ul><li class="module"><a href="Ketchup-Chunked.html" target="main">Ketchup.Chunked</a></li><li class="module"><a href="Ketchup-Httpd.html" target="main">Ketchup.Httpd</a></li><li class="module"><a href="Ketchup-Routing.html" target="main">Ketchup.Routing</a></li><li class="module"><a href="Ketchup-Static.html" target="main">Ketchup.Static</a></li><li class="module"><a href="Ketchup-Utils.html" target="main">Ketchup.Utils</a></li></ul></div></body></html>
-\ No newline at end of file
-+</script></head><body id="mini"><div id="module-list"><p class="caption">Modules</p><ul><li class="module"><a href="Ketchup-Auth.html" target="main">Ketchup.Auth</a></li><li class="module"><a href="Ketchup-Chunked.html" target="main">Ketchup.Chunked</a></li><li class="module"><a href="Ketchup-Httpd.html" target="main">Ketchup.Httpd</a></li><li class="module"><a href="Ketchup-Routing.html" target="main">Ketchup.Routing</a></li><li class="module"><a href="Ketchup-Static.html" target="main">Ketchup.Static</a></li><li class="module"><a href="Ketchup-Utils.html" target="main">Ketchup.Utils</a></li></ul></div></body></html>
-\ No newline at end of file
-diff --git a/index.html b/index.html
-index 75be0ea..0427491 100644
---- a/index.html
-+++ b/index.html
-@@ -1,4 +1,4 @@
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title></title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
- window.onload = function () {pageLoad();};
- //]]>
--</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-list"><p class="caption">Modules</p><ul><li><span id="control.n.1" class="module collapser" onclick="toggleSection('n.1')">Ketchup</span><ul id="section.n.1" class="show"><li><span class="module"><a href="Ketchup-Chunked.html">Ketchup.Chunked</a></span></li><li><span class="module"><a href="Ketchup-Httpd.html">Ketchup.Httpd</a></span></li><li><span class="module"><a href="Ketchup-Routing.html">Ketchup.Routing</a></span></li><li><span class="module"><a href="Ketchup-Static.html">Ketchup.Static</a></span></li><li><span class="module"><a href="Ketchup-Utils.html">Ketchup.Utils</a></span></li></ul></li></ul></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
-\ No newline at end of file
-+</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-list"><p class="caption">Modules</p><ul><li><span id="control.n.1" class="module collapser" onclick="toggleSection('n.1')">Ketchup</span><ul id="section.n.1" class="show"><li><span class="module"><a href="Ketchup-Auth.html">Ketchup.Auth</a></span></li><li><span class="module"><a href="Ketchup-Chunked.html">Ketchup.Chunked</a></span></li><li><span class="module"><a href="Ketchup-Httpd.html">Ketchup.Httpd</a></span></li><li><span class="module"><a href="Ketchup-Routing.html">Ketchup.Routing</a></span></li><li><span class="module"><a href="Ketchup-Static.html">Ketchup.Static</a></span></li><li><span class="module"><a href="Ketchup-Utils.html">Ketchup.Utils</a></span></li></ul></li></ul></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
-\ No newline at end of file
-diff --git a/main.txt b/main.txt
-index dab38cf..e8a9b10 100644
---- a/main.txt
-+++ b/main.txt
-@@ -10,9 +10,10 @@ trim :: ByteString -> ByteString
- 
- -- | ByteString breakSubstring wrapper that drops delimiters
- breakBS :: ByteString -> ByteString -> (ByteString, ByteString)
-+fallback :: Maybe a -> a -> a
- 
- -- | Parse a URL-encoded Request
--parseBody :: ByteString -> Map ByteString ByteString
-+parseBody :: ByteString -> [(ByteString, ByteString)]
- 
- -- | Send a HTTP reply Sends a reply with the given parameters
- sendReply :: Socket -> Int -> [(ByteString, [ByteString])] -> ByteString -> IO ()
-@@ -46,16 +47,26 @@ headers :: HTTPRequest -> Headers
- 
- -- | Get HTTP Post body (raw string)
- body :: HTTPRequest -> ByteString
--type Headers = Map ByteString [ByteString]
-+type Headers = [(ByteString, [ByteString])]
- type Handler = Socket -> HTTPRequest -> IO ()
- 
- -- | Listens for incoming HTTP request
- listenHTTP :: String -> PortNumber -> Handler -> IO ()
- instance Show HTTPRequest
- 
-+module Ketchup.Chunked
-+
-+-- | Send HTTP reply headers and begin a Chunked transmission
-+chunkHeaders :: Socket -> Int -> [(ByteString, [ByteString])] -> IO ()
-+
-+-- | Sends a chunk
-+chunk :: Socket -> ByteString -> IO ()
-+
-+-- | Send the final/closing chunk
-+endchunk :: Socket -> IO ()
-+
- module Ketchup.Routing
--type Route = Socket -> HTTPRequest -> Parameters -> IO ()
--type Parameters = Map ByteString ByteString
-+type Route = Socket -> HTTPRequest -> (ByteString -> Maybe ByteString) -> IO ()
- 
- -- | Router function Takes a list of routes and iterates through them for
- --   every requeust
-@@ -70,13 +81,7 @@ module Ketchup.Static
- -- | Static file handler Takes a directory and returns a route
- static :: ByteString -> Handler
- 
--module Ketchup.Chunked
--
---- | Send HTTP reply headers and begin a Chunked transmission
--chunkHeaders :: Socket -> Int -> [(ByteString, [ByteString])] -> IO ()
--
---- | Sends a chunk
--chunk :: Socket -> ByteString -> IO ()
-+module Ketchup.Auth
- 
---- | Send the final/closing chunk
--endchunk :: Socket -> IO ()
-+-- | Performs HTTP Basic Auth
-+basicAuth :: [(ByteString, ByteString)] -> ByteString -> Handler -> Handler
-diff --git a/mini_Ketchup-Auth.html b/mini_Ketchup-Auth.html
-new file mode 100644
-index 0000000..7015cd0
---- /dev/null
-+++ b/mini_Ketchup-Auth.html
-@@ -0,0 +1,4 @@
-+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Auth</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-+window.onload = function () {pageLoad();};
-+//]]>
-+</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Auth</p></div><div id="interface"><div class="top"><p class="src"><a href="Ketchup-Auth.html#v:basicAuth" target="main">basicAuth</a></p></div></div></body></html>
-\ No newline at end of file
-diff --git a/mini_Ketchup-Routing.html b/mini_Ketchup-Routing.html
-index a33f00a..f8b79cf 100644
---- a/mini_Ketchup-Routing.html
-+++ b/mini_Ketchup-Routing.html
-@@ -1,4 +1,4 @@
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Routing</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
- window.onload = function () {pageLoad();};
- //]]>
--</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Routing</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ketchup-Routing.html#t:Route" target="main">Route</a> </p></div><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ketchup-Routing.html#t:Parameters" target="main">Parameters</a> </p></div><div class="top"><p class="src"><a href="Ketchup-Routing.html#v:route" target="main">route</a></p></div><div class="top"><p class="src"><a href="Ketchup-Routing.html#v:useHandler" target="main">useHandler</a></p></div></div></body></html>
-\ No newline at end of file
-+</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Routing</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ketchup-Routing.html#t:Route" target="main">Route</a> </p></div><div class="top"><p class="src"><a href="Ketchup-Routing.html#v:route" target="main">route</a></p></div><div class="top"><p class="src"><a href="Ketchup-Routing.html#v:useHandler" target="main">useHandler</a></p></div></div></body></html>
-\ No newline at end of file
-diff --git a/mini_Ketchup-Utils.html b/mini_Ketchup-Utils.html
-index bfbd19d..cc746e2 100644
---- a/mini_Ketchup-Utils.html
-+++ b/mini_Ketchup-Utils.html
-@@ -1,4 +1,4 @@
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Utils</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
- window.onload = function () {pageLoad();};
- //]]>
--</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Utils</p></div><div id="interface"><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:trim" target="main">trim</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:breakBS" target="main">breakBS</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:parseBody" target="main">parseBody</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendReply" target="main">sendReply</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendBadRequest" target="main">sendBadRequest</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendNotFound" target="main">sendNotFound</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:statusMsg" target="main">statusMsg</a></p></div></div></body></html>
-\ No newline at end of file
-+</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Utils</p></div><div id="interface"><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:trim" target="main">trim</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:breakBS" target="main">breakBS</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:fallback" target="main">fallback</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:parseBody" target="main">parseBody</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendReply" target="main">sendReply</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendBadRequest" target="main">sendBadRequest</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendNotFound" target="main">sendNotFound</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:statusMsg" target="main">statusMsg</a></p></div></div></body></html>
-\ No newline at end of file
diff --git a/docs/.git/HEAD b/docs/.git/HEAD
deleted file mode 100644
--- a/docs/.git/HEAD
+++ /dev/null
@@ -1,1 +0,0 @@
-ref: refs/heads/gh-pages
diff --git a/docs/.git/config b/docs/.git/config
deleted file mode 100644
--- a/docs/.git/config
+++ /dev/null
@@ -1,11 +0,0 @@
-[core]
-	repositoryformatversion = 0
-	filemode = true
-	bare = false
-	logallrefupdates = true
-[remote "origin"]
-	url = ssh://git@github.com/Hamcha/ketchup
-	fetch = +refs/heads/*:refs/remotes/origin/*
-[branch "gh-pages"]
-	remote = origin
-	merge = refs/heads/gh-pages
diff --git a/docs/.git/config~ b/docs/.git/config~
deleted file mode 100644
--- a/docs/.git/config~
+++ /dev/null
@@ -1,11 +0,0 @@
-[core]
-	repositoryformatversion = 0
-	filemode = true
-	bare = false
-	logallrefupdates = true
-[remote "origin"]
-	url = https://github.com/Hamcha/ketchup
-	fetch = +refs/heads/*:refs/remotes/origin/*
-[branch "gh-pages"]
-	remote = origin
-	merge = refs/heads/gh-pages
diff --git a/docs/.git/description b/docs/.git/description
deleted file mode 100644
--- a/docs/.git/description
+++ /dev/null
@@ -1,1 +0,0 @@
-Unnamed repository; edit this file 'description' to name the repository.
diff --git a/docs/.git/hooks/applypatch-msg.sample b/docs/.git/hooks/applypatch-msg.sample
deleted file mode 100644
--- a/docs/.git/hooks/applypatch-msg.sample
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to check the commit log message taken by
-# applypatch from an e-mail message.
-#
-# The hook should exit with non-zero status after issuing an
-# appropriate message if it wants to stop the commit.  The hook is
-# allowed to edit the commit message file.
-#
-# To enable this hook, rename this file to "applypatch-msg".
-
-. git-sh-setup
-test -x "$GIT_DIR/hooks/commit-msg" &&
-	exec "$GIT_DIR/hooks/commit-msg" ${1+"$@"}
-:
diff --git a/docs/.git/hooks/commit-msg.sample b/docs/.git/hooks/commit-msg.sample
deleted file mode 100644
--- a/docs/.git/hooks/commit-msg.sample
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to check the commit log message.
-# Called by "git commit" with one argument, the name of the file
-# that has the commit message.  The hook should exit with non-zero
-# status after issuing an appropriate message if it wants to stop the
-# commit.  The hook is allowed to edit the commit message file.
-#
-# To enable this hook, rename this file to "commit-msg".
-
-# Uncomment the below to add a Signed-off-by line to the message.
-# Doing this in a hook is a bad idea in general, but the prepare-commit-msg
-# hook is more suited to it.
-#
-# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
-# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"
-
-# This example catches duplicate Signed-off-by lines.
-
-test "" = "$(grep '^Signed-off-by: ' "$1" |
-	 sort | uniq -c | sed -e '/^[ 	]*1[ 	]/d')" || {
-	echo >&2 Duplicate Signed-off-by lines.
-	exit 1
-}
diff --git a/docs/.git/hooks/post-update.sample b/docs/.git/hooks/post-update.sample
deleted file mode 100644
--- a/docs/.git/hooks/post-update.sample
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to prepare a packed repository for use over
-# dumb transports.
-#
-# To enable this hook, rename this file to "post-update".
-
-exec git update-server-info
diff --git a/docs/.git/hooks/pre-applypatch.sample b/docs/.git/hooks/pre-applypatch.sample
deleted file mode 100644
--- a/docs/.git/hooks/pre-applypatch.sample
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to verify what is about to be committed
-# by applypatch from an e-mail message.
-#
-# The hook should exit with non-zero status after issuing an
-# appropriate message if it wants to stop the commit.
-#
-# To enable this hook, rename this file to "pre-applypatch".
-
-. git-sh-setup
-test -x "$GIT_DIR/hooks/pre-commit" &&
-	exec "$GIT_DIR/hooks/pre-commit" ${1+"$@"}
-:
diff --git a/docs/.git/hooks/pre-commit.sample b/docs/.git/hooks/pre-commit.sample
deleted file mode 100644
--- a/docs/.git/hooks/pre-commit.sample
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to verify what is about to be committed.
-# Called by "git commit" with no arguments.  The hook should
-# exit with non-zero status after issuing an appropriate message if
-# it wants to stop the commit.
-#
-# To enable this hook, rename this file to "pre-commit".
-
-if git rev-parse --verify HEAD >/dev/null 2>&1
-then
-	against=HEAD
-else
-	# Initial commit: diff against an empty tree object
-	against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
-fi
-
-# If you want to allow non-ASCII filenames set this variable to true.
-allownonascii=$(git config --bool hooks.allownonascii)
-
-# Redirect output to stderr.
-exec 1>&2
-
-# Cross platform projects tend to avoid non-ASCII filenames; prevent
-# them from being added to the repository. We exploit the fact that the
-# printable range starts at the space character and ends with tilde.
-if [ "$allownonascii" != "true" ] &&
-	# Note that the use of brackets around a tr range is ok here, (it's
-	# even required, for portability to Solaris 10's /usr/bin/tr), since
-	# the square bracket bytes happen to fall in the designated range.
-	test $(git diff --cached --name-only --diff-filter=A -z $against |
-	  LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0
-then
-	cat <<\EOF
-Error: Attempt to add a non-ASCII file name.
-
-This can cause problems if you want to work with people on other platforms.
-
-To be portable it is advisable to rename the file.
-
-If you know what you are doing you can disable this check using:
-
-  git config hooks.allownonascii true
-EOF
-	exit 1
-fi
-
-# If there are whitespace errors, print the offending file names and fail.
-exec git diff-index --check --cached $against --
diff --git a/docs/.git/hooks/pre-push.sample b/docs/.git/hooks/pre-push.sample
deleted file mode 100644
--- a/docs/.git/hooks/pre-push.sample
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/sh
-
-# An example hook script to verify what is about to be pushed.  Called by "git
-# push" after it has checked the remote status, but before anything has been
-# pushed.  If this script exits with a non-zero status nothing will be pushed.
-#
-# This hook is called with the following parameters:
-#
-# $1 -- Name of the remote to which the push is being done
-# $2 -- URL to which the push is being done
-#
-# If pushing without using a named remote those arguments will be equal.
-#
-# Information about the commits which are being pushed is supplied as lines to
-# the standard input in the form:
-#
-#   <local ref> <local sha1> <remote ref> <remote sha1>
-#
-# This sample shows how to prevent push of commits where the log message starts
-# with "WIP" (work in progress).
-
-remote="$1"
-url="$2"
-
-z40=0000000000000000000000000000000000000000
-
-IFS=' '
-while read local_ref local_sha remote_ref remote_sha
-do
-	if [ "$local_sha" = $z40 ]
-	then
-		# Handle delete
-		:
-	else
-		if [ "$remote_sha" = $z40 ]
-		then
-			# New branch, examine all commits
-			range="$local_sha"
-		else
-			# Update to existing branch, examine new commits
-			range="$remote_sha..$local_sha"
-		fi
-
-		# Check for WIP commit
-		commit=`git rev-list -n 1 --grep '^WIP' "$range"`
-		if [ -n "$commit" ]
-		then
-			echo "Found WIP commit in $local_ref, not pushing"
-			exit 1
-		fi
-	fi
-done
-
-exit 0
diff --git a/docs/.git/hooks/pre-rebase.sample b/docs/.git/hooks/pre-rebase.sample
deleted file mode 100644
--- a/docs/.git/hooks/pre-rebase.sample
+++ /dev/null
@@ -1,169 +0,0 @@
-#!/bin/sh
-#
-# Copyright (c) 2006, 2008 Junio C Hamano
-#
-# The "pre-rebase" hook is run just before "git rebase" starts doing
-# its job, and can prevent the command from running by exiting with
-# non-zero status.
-#
-# The hook is called with the following parameters:
-#
-# $1 -- the upstream the series was forked from.
-# $2 -- the branch being rebased (or empty when rebasing the current branch).
-#
-# This sample shows how to prevent topic branches that are already
-# merged to 'next' branch from getting rebased, because allowing it
-# would result in rebasing already published history.
-
-publish=next
-basebranch="$1"
-if test "$#" = 2
-then
-	topic="refs/heads/$2"
-else
-	topic=`git symbolic-ref HEAD` ||
-	exit 0 ;# we do not interrupt rebasing detached HEAD
-fi
-
-case "$topic" in
-refs/heads/??/*)
-	;;
-*)
-	exit 0 ;# we do not interrupt others.
-	;;
-esac
-
-# Now we are dealing with a topic branch being rebased
-# on top of master.  Is it OK to rebase it?
-
-# Does the topic really exist?
-git show-ref -q "$topic" || {
-	echo >&2 "No such branch $topic"
-	exit 1
-}
-
-# Is topic fully merged to master?
-not_in_master=`git rev-list --pretty=oneline ^master "$topic"`
-if test -z "$not_in_master"
-then
-	echo >&2 "$topic is fully merged to master; better remove it."
-	exit 1 ;# we could allow it, but there is no point.
-fi
-
-# Is topic ever merged to next?  If so you should not be rebasing it.
-only_next_1=`git rev-list ^master "^$topic" ${publish} | sort`
-only_next_2=`git rev-list ^master           ${publish} | sort`
-if test "$only_next_1" = "$only_next_2"
-then
-	not_in_topic=`git rev-list "^$topic" master`
-	if test -z "$not_in_topic"
-	then
-		echo >&2 "$topic is already up-to-date with master"
-		exit 1 ;# we could allow it, but there is no point.
-	else
-		exit 0
-	fi
-else
-	not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"`
-	/usr/local/bin/perl -e '
-		my $topic = $ARGV[0];
-		my $msg = "* $topic has commits already merged to public branch:\n";
-		my (%not_in_next) = map {
-			/^([0-9a-f]+) /;
-			($1 => 1);
-		} split(/\n/, $ARGV[1]);
-		for my $elem (map {
-				/^([0-9a-f]+) (.*)$/;
-				[$1 => $2];
-			} split(/\n/, $ARGV[2])) {
-			if (!exists $not_in_next{$elem->[0]}) {
-				if ($msg) {
-					print STDERR $msg;
-					undef $msg;
-				}
-				print STDERR " $elem->[1]\n";
-			}
-		}
-	' "$topic" "$not_in_next" "$not_in_master"
-	exit 1
-fi
-
-exit 0
-
-################################################################
-
-This sample hook safeguards topic branches that have been
-published from being rewound.
-
-The workflow assumed here is:
-
- * Once a topic branch forks from "master", "master" is never
-   merged into it again (either directly or indirectly).
-
- * Once a topic branch is fully cooked and merged into "master",
-   it is deleted.  If you need to build on top of it to correct
-   earlier mistakes, a new topic branch is created by forking at
-   the tip of the "master".  This is not strictly necessary, but
-   it makes it easier to keep your history simple.
-
- * Whenever you need to test or publish your changes to topic
-   branches, merge them into "next" branch.
-
-The script, being an example, hardcodes the publish branch name
-to be "next", but it is trivial to make it configurable via
-$GIT_DIR/config mechanism.
-
-With this workflow, you would want to know:
-
-(1) ... if a topic branch has ever been merged to "next".  Young
-    topic branches can have stupid mistakes you would rather
-    clean up before publishing, and things that have not been
-    merged into other branches can be easily rebased without
-    affecting other people.  But once it is published, you would
-    not want to rewind it.
-
-(2) ... if a topic branch has been fully merged to "master".
-    Then you can delete it.  More importantly, you should not
-    build on top of it -- other people may already want to
-    change things related to the topic as patches against your
-    "master", so if you need further changes, it is better to
-    fork the topic (perhaps with the same name) afresh from the
-    tip of "master".
-
-Let's look at this example:
-
-		   o---o---o---o---o---o---o---o---o---o "next"
-		  /       /           /           /
-		 /   a---a---b A     /           /
-		/   /               /           /
-	       /   /   c---c---c---c B         /
-	      /   /   /             \         /
-	     /   /   /   b---b C     \       /
-	    /   /   /   /             \     /
-    ---o---o---o---o---o---o---o---o---o---o---o "master"
-
-
-A, B and C are topic branches.
-
- * A has one fix since it was merged up to "next".
-
- * B has finished.  It has been fully merged up to "master" and "next",
-   and is ready to be deleted.
-
- * C has not merged to "next" at all.
-
-We would want to allow C to be rebased, refuse A, and encourage
-B to be deleted.
-
-To compute (1):
-
-	git rev-list ^master ^topic next
-	git rev-list ^master        next
-
-	if these match, topic has not merged in next at all.
-
-To compute (2):
-
-	git rev-list master..topic
-
-	if this is empty, it is fully merged to "master".
diff --git a/docs/.git/hooks/prepare-commit-msg.sample b/docs/.git/hooks/prepare-commit-msg.sample
deleted file mode 100644
--- a/docs/.git/hooks/prepare-commit-msg.sample
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to prepare the commit log message.
-# Called by "git commit" with the name of the file that has the
-# commit message, followed by the description of the commit
-# message's source.  The hook's purpose is to edit the commit
-# message file.  If the hook fails with a non-zero status,
-# the commit is aborted.
-#
-# To enable this hook, rename this file to "prepare-commit-msg".
-
-# This hook includes three examples.  The first comments out the
-# "Conflicts:" part of a merge commit.
-#
-# The second includes the output of "git diff --name-status -r"
-# into the message, just before the "git status" output.  It is
-# commented because it doesn't cope with --amend or with squashed
-# commits.
-#
-# The third example adds a Signed-off-by line to the message, that can
-# still be edited.  This is rarely a good idea.
-
-case "$2,$3" in
-  merge,)
-    /usr/local/bin/perl -i.bak -ne 's/^/# /, s/^# #/#/ if /^Conflicts/ .. /#/; print' "$1" ;;
-
-# ,|template,)
-#   /usr/local/bin/perl -i.bak -pe '
-#      print "\n" . `git diff --cached --name-status -r`
-#	 if /^#/ && $first++ == 0' "$1" ;;
-
-  *) ;;
-esac
-
-# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
-# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"
diff --git a/docs/.git/hooks/update.sample b/docs/.git/hooks/update.sample
deleted file mode 100644
--- a/docs/.git/hooks/update.sample
+++ /dev/null
@@ -1,128 +0,0 @@
-#!/bin/sh
-#
-# An example hook script to blocks unannotated tags from entering.
-# Called by "git receive-pack" with arguments: refname sha1-old sha1-new
-#
-# To enable this hook, rename this file to "update".
-#
-# Config
-# ------
-# hooks.allowunannotated
-#   This boolean sets whether unannotated tags will be allowed into the
-#   repository.  By default they won't be.
-# hooks.allowdeletetag
-#   This boolean sets whether deleting tags will be allowed in the
-#   repository.  By default they won't be.
-# hooks.allowmodifytag
-#   This boolean sets whether a tag may be modified after creation. By default
-#   it won't be.
-# hooks.allowdeletebranch
-#   This boolean sets whether deleting branches will be allowed in the
-#   repository.  By default they won't be.
-# hooks.denycreatebranch
-#   This boolean sets whether remotely creating branches will be denied
-#   in the repository.  By default this is allowed.
-#
-
-# --- Command line
-refname="$1"
-oldrev="$2"
-newrev="$3"
-
-# --- Safety check
-if [ -z "$GIT_DIR" ]; then
-	echo "Don't run this script from the command line." >&2
-	echo " (if you want, you could supply GIT_DIR then run" >&2
-	echo "  $0 <ref> <oldrev> <newrev>)" >&2
-	exit 1
-fi
-
-if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then
-	echo "usage: $0 <ref> <oldrev> <newrev>" >&2
-	exit 1
-fi
-
-# --- Config
-allowunannotated=$(git config --bool hooks.allowunannotated)
-allowdeletebranch=$(git config --bool hooks.allowdeletebranch)
-denycreatebranch=$(git config --bool hooks.denycreatebranch)
-allowdeletetag=$(git config --bool hooks.allowdeletetag)
-allowmodifytag=$(git config --bool hooks.allowmodifytag)
-
-# check for no description
-projectdesc=$(sed -e '1q' "$GIT_DIR/description")
-case "$projectdesc" in
-"Unnamed repository"* | "")
-	echo "*** Project description file hasn't been set" >&2
-	exit 1
-	;;
-esac
-
-# --- Check types
-# if $newrev is 0000...0000, it's a commit to delete a ref.
-zero="0000000000000000000000000000000000000000"
-if [ "$newrev" = "$zero" ]; then
-	newrev_type=delete
-else
-	newrev_type=$(git cat-file -t $newrev)
-fi
-
-case "$refname","$newrev_type" in
-	refs/tags/*,commit)
-		# un-annotated tag
-		short_refname=${refname##refs/tags/}
-		if [ "$allowunannotated" != "true" ]; then
-			echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2
-			echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2
-			exit 1
-		fi
-		;;
-	refs/tags/*,delete)
-		# delete tag
-		if [ "$allowdeletetag" != "true" ]; then
-			echo "*** Deleting a tag is not allowed in this repository" >&2
-			exit 1
-		fi
-		;;
-	refs/tags/*,tag)
-		# annotated tag
-		if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1
-		then
-			echo "*** Tag '$refname' already exists." >&2
-			echo "*** Modifying a tag is not allowed in this repository." >&2
-			exit 1
-		fi
-		;;
-	refs/heads/*,commit)
-		# branch
-		if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then
-			echo "*** Creating a branch is not allowed in this repository" >&2
-			exit 1
-		fi
-		;;
-	refs/heads/*,delete)
-		# delete branch
-		if [ "$allowdeletebranch" != "true" ]; then
-			echo "*** Deleting a branch is not allowed in this repository" >&2
-			exit 1
-		fi
-		;;
-	refs/remotes/*,commit)
-		# tracking branch
-		;;
-	refs/remotes/*,delete)
-		# delete tracking branch
-		if [ "$allowdeletebranch" != "true" ]; then
-			echo "*** Deleting a tracking branch is not allowed in this repository" >&2
-			exit 1
-		fi
-		;;
-	*)
-		# Anything else (is there anything else?)
-		echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2
-		exit 1
-		;;
-esac
-
-# --- Finished
-exit 0
diff --git a/docs/.git/index b/docs/.git/index
deleted file mode 100644
Binary files a/docs/.git/index and /dev/null differ
diff --git a/docs/.git/info/exclude b/docs/.git/info/exclude
deleted file mode 100644
--- a/docs/.git/info/exclude
+++ /dev/null
@@ -1,6 +0,0 @@
-# git ls-files --others --exclude-from=.git/info/exclude
-# Lines that start with '#' are comments.
-# For a project mostly in C, the following would be a good set of
-# exclude patterns (uncomment them if you want to use them):
-# *.[oa]
-# *~
diff --git a/docs/.git/logs/HEAD b/docs/.git/logs/HEAD
deleted file mode 100644
--- a/docs/.git/logs/HEAD
+++ /dev/null
@@ -1,3 +0,0 @@
-0000000000000000000000000000000000000000 4ac44b6241517d43310da25b086e175b3b9c0b49 Hamcha <zikyky@gmail.com> 1404003477 +0200	clone: from https://github.com/Hamcha/ketchup
-4ac44b6241517d43310da25b086e175b3b9c0b49 33d1dadf72d9a1c6217c5a6c7992dcdaaa343742 Hamcha <zikyky@gmail.com> 1404003595 +0200	commit: Updated docs
-33d1dadf72d9a1c6217c5a6c7992dcdaaa343742 4c2353910734c89633d869f0ffccf8f565c93221 Hamcha <zikyky@gmail.com> 1404079702 +0200	commit: Updated docs to 0.3
diff --git a/docs/.git/logs/refs/heads/gh-pages b/docs/.git/logs/refs/heads/gh-pages
deleted file mode 100644
--- a/docs/.git/logs/refs/heads/gh-pages
+++ /dev/null
@@ -1,3 +0,0 @@
-0000000000000000000000000000000000000000 4ac44b6241517d43310da25b086e175b3b9c0b49 Hamcha <zikyky@gmail.com> 1404003477 +0200	clone: from https://github.com/Hamcha/ketchup
-4ac44b6241517d43310da25b086e175b3b9c0b49 33d1dadf72d9a1c6217c5a6c7992dcdaaa343742 Hamcha <zikyky@gmail.com> 1404003595 +0200	commit: Updated docs
-33d1dadf72d9a1c6217c5a6c7992dcdaaa343742 4c2353910734c89633d869f0ffccf8f565c93221 Hamcha <zikyky@gmail.com> 1404079702 +0200	commit: Updated docs to 0.3
diff --git a/docs/.git/logs/refs/remotes/origin/HEAD b/docs/.git/logs/refs/remotes/origin/HEAD
deleted file mode 100644
--- a/docs/.git/logs/refs/remotes/origin/HEAD
+++ /dev/null
@@ -1,1 +0,0 @@
-0000000000000000000000000000000000000000 4ad51f9dc87b6aa48cb614030521d957b8498622 Hamcha <zikyky@gmail.com> 1404003477 +0200	clone: from https://github.com/Hamcha/ketchup
diff --git a/docs/.git/logs/refs/remotes/origin/gh-pages b/docs/.git/logs/refs/remotes/origin/gh-pages
deleted file mode 100644
--- a/docs/.git/logs/refs/remotes/origin/gh-pages
+++ /dev/null
@@ -1,2 +0,0 @@
-4ac44b6241517d43310da25b086e175b3b9c0b49 33d1dadf72d9a1c6217c5a6c7992dcdaaa343742 Hamcha <zikyky@gmail.com> 1404003933 +0200	update by push
-33d1dadf72d9a1c6217c5a6c7992dcdaaa343742 4c2353910734c89633d869f0ffccf8f565c93221 Hamcha <zikyky@gmail.com> 1404079711 +0200	update by push
diff --git a/docs/.git/objects/04/27491eaa020186e459934ed69cdb7d808501cd b/docs/.git/objects/04/27491eaa020186e459934ed69cdb7d808501cd
deleted file mode 100644
--- a/docs/.git/objects/04/27491eaa020186e459934ed69cdb7d808501cd
+++ /dev/null
@@ -1,4 +0,0 @@
-xßOÛ0Ç÷Ì_aü0à!ñJ4ÖÄ+L Á@´M×1M¨k{±Óö¿ïl(Ý&M}jz¾ûÜÝ×çI=B½þlûørX|¿:AJtuûñülpBÈ×þãâ};-.ÎQ/})[»Z+&	9ù®3Ïçé¼êfLk²ð¬î>·®Ä4ùS©lþJïðð0{WÁJMcP¥3øÑÖ³µrB¹¤XÿrìÄÂO ^±Æ
-ß÷¹ÚIA3ÒýÊZMPÕk.J¹µ5BæØº¥¶Âaä C!:Ç>$`-ojãm84ÃÊRóIÒºZ¦[~d3}¡-¿hÖEÿÃlûnx|TÝmÍkUêyªÔ¬D9zh÷÷v÷ÐOÃÆâì»{_-BîïéÖKUérI³²¡ºÌ±a|Q?ÔÔJÄ%³p'^(>zËT¨dM3¸ #©Óî2lFtæ½V=AdÕûÌG¾¸VÒÌ<eæÌÄÔ¸%¦oÕÈAFp¡îâ»¢Úê²"µu`]bzÎ¡F`ù¾Dk
-]z\£eªÒLS!a¶¤dÆBH+.k>iÐã±7"è¿»Q;{~W­ÙäôÚèõ
-m+=ïô%¼ÊO"wÄä¨uU§ugJ½)³=Ëþ_ÀaÕª(×usì)¼Ðuh°m¼ÖðÔx­ÒÎº9öÆ1Wó5j4n½Wo×Áö2}¸²øfûõ?híÂ³4ôªÙå¢D£%zí[1;RÜm éiÜE>7ÆúU±öúéþÊ{"q'IóÃ¸
diff --git a/docs/.git/objects/0e/f0bb4acb2a054328faea81aaa1b6ef08ab4324 b/docs/.git/objects/0e/f0bb4acb2a054328faea81aaa1b6ef08ab4324
deleted file mode 100644
Binary files a/docs/.git/objects/0e/f0bb4acb2a054328faea81aaa1b6ef08ab4324 and /dev/null differ
diff --git a/docs/.git/objects/31/0e7b443f14a92b46059c540620e2e3ec9eeecf b/docs/.git/objects/31/0e7b443f14a92b46059c540620e2e3ec9eeecf
deleted file mode 100644
Binary files a/docs/.git/objects/31/0e7b443f14a92b46059c540620e2e3ec9eeecf and /dev/null differ
diff --git a/docs/.git/objects/33/d1dadf72d9a1c6217c5a6c7992dcdaaa343742 b/docs/.git/objects/33/d1dadf72d9a1c6217c5a6c7992dcdaaa343742
deleted file mode 100644
Binary files a/docs/.git/objects/33/d1dadf72d9a1c6217c5a6c7992dcdaaa343742 and /dev/null differ
diff --git a/docs/.git/objects/4c/2353910734c89633d869f0ffccf8f565c93221 b/docs/.git/objects/4c/2353910734c89633d869f0ffccf8f565c93221
deleted file mode 100644
--- a/docs/.git/objects/4c/2353910734c89633d869f0ffccf8f565c93221
+++ /dev/null
@@ -1,2 +0,0 @@
-xÎA
-1@Q×=Eö$MÇ¶ âÒxT´vëBOï\Áí_[­cOiÕçR@%R$ÝJæå2äANg$JÈçÄAÝ$syv`62±Kôeq¢²Õ³75áÀ1x'ï~k3¥êM`÷ïûçp­2>6Úê(`À#zX£GtK]Özù¹ÓdÒ5}Aov?¹C$
diff --git a/docs/.git/objects/5c/7dd6782bd7103baeb041d69fd3e17410ab46dd b/docs/.git/objects/5c/7dd6782bd7103baeb041d69fd3e17410ab46dd
deleted file mode 100644
Binary files a/docs/.git/objects/5c/7dd6782bd7103baeb041d69fd3e17410ab46dd and /dev/null differ
diff --git a/docs/.git/objects/63/50f4f119a8325852c5279f96ae5b0c34cce55f b/docs/.git/objects/63/50f4f119a8325852c5279f96ae5b0c34cce55f
deleted file mode 100644
Binary files a/docs/.git/objects/63/50f4f119a8325852c5279f96ae5b0c34cce55f and /dev/null differ
diff --git a/docs/.git/objects/70/15cd0af9b0fc60257cff8d057cee6a475f44d8 b/docs/.git/objects/70/15cd0af9b0fc60257cff8d057cee6a475f44d8
deleted file mode 100644
Binary files a/docs/.git/objects/70/15cd0af9b0fc60257cff8d057cee6a475f44d8 and /dev/null differ
diff --git a/docs/.git/objects/87/66065959fca5de5327f875dbb67559f69b52b6 b/docs/.git/objects/87/66065959fca5de5327f875dbb67559f69b52b6
deleted file mode 100644
--- a/docs/.git/objects/87/66065959fca5de5327f875dbb67559f69b52b6
+++ /dev/null
@@ -1,3 +0,0 @@
-x]oÓ0¹î¯ð|µ]$^5!QêD*éÐÝF*@Ó.\Ûk¼:vOVÿmPÑ¾ïsìsÎJÛÏß¾¡'óÛ,ÿ~w
-(5º[~X|Êùz2ÏçèÛU~½@ãøå53N²iB.o0Â@õ¶mãö"¶õä÷dXã`¼rÆNioWjã¿PÆÉ¤7©d"¥¥æ_	U$4jàÌ¢|_Ix¿K0È@"^°ÚIHùÇèF$¥ @ËaÖÊlPQË§[.¹sÕR'ØÁ^KWH	0;AçNðm°tXÇkUr5÷aBX¾P:~ö¸Wîg¶e½Öô«îè¡'Ù|ÏF­2Â¶±5Ú2ôÔêNÏÐÏ­åÂMMG<>¦£ ¤ÏâÊ=R"Á¥2Ê?B¨m¿µ¢Ñ2ÒÊ?­×ÌùÊpV>N¯»{GIÒF§T«?²»ñ&_.%ð¢©¢YE
-áSÀêµ¯.ò¬A%ÌgB«ÿ"fEc6R£¸W¾«S;ÅQÌ{ëÀ¬¾uÐÅý?í%GQ¾YÝAh§xaÐÄwCOù):ýæ{.
diff --git a/docs/.git/objects/a3/3f00a997926762956b66487bc763c7500b5912 b/docs/.git/objects/a3/3f00a997926762956b66487bc763c7500b5912
deleted file mode 100644
Binary files a/docs/.git/objects/a3/3f00a997926762956b66487bc763c7500b5912 and /dev/null differ
diff --git a/docs/.git/objects/ad/296ab5c62662ad2f55c20cd75483c7014e3a9e b/docs/.git/objects/ad/296ab5c62662ad2f55c20cd75483c7014e3a9e
deleted file mode 100644
Binary files a/docs/.git/objects/ad/296ab5c62662ad2f55c20cd75483c7014e3a9e and /dev/null differ
diff --git a/docs/.git/objects/c8/298c807614715a3dd52fe3fddcd74b42d8dd51 b/docs/.git/objects/c8/298c807614715a3dd52fe3fddcd74b42d8dd51
deleted file mode 100644
Binary files a/docs/.git/objects/c8/298c807614715a3dd52fe3fddcd74b42d8dd51 and /dev/null differ
diff --git a/docs/.git/objects/ca/7171c6a9384a3af595c1110538b011803b834c b/docs/.git/objects/ca/7171c6a9384a3af595c1110538b011803b834c
deleted file mode 100644
Binary files a/docs/.git/objects/ca/7171c6a9384a3af595c1110538b011803b834c and /dev/null differ
diff --git a/docs/.git/objects/cc/746e214c400d625c17bb704964d2490009dcd6 b/docs/.git/objects/cc/746e214c400d625c17bb704964d2490009dcd6
deleted file mode 100644
Binary files a/docs/.git/objects/cc/746e214c400d625c17bb704964d2490009dcd6 and /dev/null differ
diff --git a/docs/.git/objects/da/b38cfd353bbdc462641543658ea8acd3eac19d b/docs/.git/objects/da/b38cfd353bbdc462641543658ea8acd3eac19d
deleted file mode 100644
Binary files a/docs/.git/objects/da/b38cfd353bbdc462641543658ea8acd3eac19d and /dev/null differ
diff --git a/docs/.git/objects/e5/dc6abf9873d9eaf80c4e5d308832b23e5b18cd b/docs/.git/objects/e5/dc6abf9873d9eaf80c4e5d308832b23e5b18cd
deleted file mode 100644
Binary files a/docs/.git/objects/e5/dc6abf9873d9eaf80c4e5d308832b23e5b18cd and /dev/null differ
diff --git a/docs/.git/objects/e8/a9b100db71a644cc6cf513f26b5f44a42d17ab b/docs/.git/objects/e8/a9b100db71a644cc6cf513f26b5f44a42d17ab
deleted file mode 100644
Binary files a/docs/.git/objects/e8/a9b100db71a644cc6cf513f26b5f44a42d17ab and /dev/null differ
diff --git a/docs/.git/objects/ec/a1b33fcd1c0373e31d108a81dca8be042fd89c b/docs/.git/objects/ec/a1b33fcd1c0373e31d108a81dca8be042fd89c
deleted file mode 100644
Binary files a/docs/.git/objects/ec/a1b33fcd1c0373e31d108a81dca8be042fd89c and /dev/null differ
diff --git a/docs/.git/objects/f8/b79cfde7e99e07a48a906d6b0f43517cdee2b3 b/docs/.git/objects/f8/b79cfde7e99e07a48a906d6b0f43517cdee2b3
deleted file mode 100644
Binary files a/docs/.git/objects/f8/b79cfde7e99e07a48a906d6b0f43517cdee2b3 and /dev/null differ
diff --git a/docs/.git/objects/ff/6a9f5d733cd98051951968bb686e9766cf0a44 b/docs/.git/objects/ff/6a9f5d733cd98051951968bb686e9766cf0a44
deleted file mode 100644
Binary files a/docs/.git/objects/ff/6a9f5d733cd98051951968bb686e9766cf0a44 and /dev/null differ
diff --git a/docs/.git/objects/pack/pack-91a33bcc9daf02ed2b87eb63c5967322fb125afb.idx b/docs/.git/objects/pack/pack-91a33bcc9daf02ed2b87eb63c5967322fb125afb.idx
deleted file mode 100644
Binary files a/docs/.git/objects/pack/pack-91a33bcc9daf02ed2b87eb63c5967322fb125afb.idx and /dev/null differ
diff --git a/docs/.git/objects/pack/pack-91a33bcc9daf02ed2b87eb63c5967322fb125afb.pack b/docs/.git/objects/pack/pack-91a33bcc9daf02ed2b87eb63c5967322fb125afb.pack
deleted file mode 100644
Binary files a/docs/.git/objects/pack/pack-91a33bcc9daf02ed2b87eb63c5967322fb125afb.pack and /dev/null differ
diff --git a/docs/.git/packed-refs b/docs/.git/packed-refs
deleted file mode 100644
--- a/docs/.git/packed-refs
+++ /dev/null
@@ -1,3 +0,0 @@
-# pack-refs with: peeled fully-peeled 
-4ac44b6241517d43310da25b086e175b3b9c0b49 refs/remotes/origin/gh-pages
-4ad51f9dc87b6aa48cb614030521d957b8498622 refs/remotes/origin/master
diff --git a/docs/.git/refs/heads/gh-pages b/docs/.git/refs/heads/gh-pages
deleted file mode 100644
--- a/docs/.git/refs/heads/gh-pages
+++ /dev/null
@@ -1,1 +0,0 @@
-4c2353910734c89633d869f0ffccf8f565c93221
diff --git a/docs/.git/refs/remotes/origin/HEAD b/docs/.git/refs/remotes/origin/HEAD
deleted file mode 100644
--- a/docs/.git/refs/remotes/origin/HEAD
+++ /dev/null
@@ -1,1 +0,0 @@
-ref: refs/remotes/origin/master
diff --git a/docs/.git/refs/remotes/origin/gh-pages b/docs/.git/refs/remotes/origin/gh-pages
deleted file mode 100644
--- a/docs/.git/refs/remotes/origin/gh-pages
+++ /dev/null
@@ -1,1 +0,0 @@
-4c2353910734c89633d869f0ffccf8f565c93221
diff --git a/docs/Ketchup-Auth.html b/docs/Ketchup-Auth.html
deleted file mode 100644
--- a/docs/Ketchup-Auth.html
+++ /dev/null
@@ -1,8 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Auth</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Auth.html");};
-//]]>
-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Auth</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:basicAuth">basicAuth</a> &#8759; [(ByteString, ByteString)] &#8594; ByteString &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:basicAuth" class="def">basicAuth</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; [(ByteString, ByteString)]</td><td class="doc"><p>List of (Username, Password)
-</p></td></tr><tr><td class="src">&#8594; ByteString</td><td class="doc"><p>Authentication Realm
-</p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc"><p>Success Handler
-</p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Performs HTTP Basic Auth
-</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
diff --git a/docs/Ketchup-Chunked.html b/docs/Ketchup-Chunked.html
deleted file mode 100644
--- a/docs/Ketchup-Chunked.html
+++ /dev/null
@@ -1,13 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Chunked</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Chunked.html");};
-//]]>
-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Chunked</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:chunkHeaders">chunkHeaders</a> &#8759; Socket &#8594; Int &#8594; [(ByteString, [ByteString])] &#8594; IO ()</li><li class="src short"><a href="#v:chunk">chunk</a> &#8759; Socket &#8594; ByteString &#8594; IO ()</li><li class="src short"><a href="#v:endchunk">endchunk</a> &#8759; Socket &#8594; IO ()</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:chunkHeaders" class="def">chunkHeaders</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; Socket</td><td class="doc"><p>Socket to write to
-</p></td></tr><tr><td class="src">&#8594; Int</td><td class="doc"><p>Status code
-</p></td></tr><tr><td class="src">&#8594; [(ByteString, [ByteString])]</td><td class="doc"><p>Headers
-</p></td></tr><tr><td class="src">&#8594; IO ()</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Send HTTP reply headers and begin a Chunked transmission
-</p></div></div><div class="top"><p class="src"><a name="v:chunk" class="def">chunk</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; Socket</td><td class="doc"><p>Socket to write to
-</p></td></tr><tr><td class="src">&#8594; ByteString</td><td class="doc"><p>Content to write
-</p></td></tr><tr><td class="src">&#8594; IO ()</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Sends a chunk
-</p></div></div><div class="top"><p class="src"><a name="v:endchunk" class="def">endchunk</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; Socket</td><td class="doc"><p>Socket to write to
-</p></td></tr><tr><td class="src">&#8594; IO ()</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Send the final/closing chunk
-</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
diff --git a/docs/Ketchup-Httpd.html b/docs/Ketchup-Httpd.html
deleted file mode 100644
--- a/docs/Ketchup-Httpd.html
+++ /dev/null
@@ -1,15 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Httpd</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Httpd.html");};
-//]]>
-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Httpd</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">data</span>  <a href="#t:HTTPRequest">HTTPRequest</a>  = <a href="#v:HTTPRequest">HTTPRequest</a> {<ul class="subs"><li><a href="#v:method">method</a> &#8759; ByteString</li><li><a href="#v:uri">uri</a> &#8759; ByteString</li><li><a href="#v:httpver">httpver</a> &#8759; ByteString</li><li><a href="#v:headers">headers</a> &#8759; <a href="Ketchup-Httpd.html#t:Headers">Headers</a></li><li><a href="#v:body">body</a> &#8759; ByteString</li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:Headers">Headers</a> = [(ByteString, [ByteString])]</li><li class="src short"><span class="keyword">type</span> <a href="#t:Handler">Handler</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; IO ()</li><li class="src short"><a href="#v:listenHTTP">listenHTTP</a> &#8759; String &#8594; PortNumber &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; IO ()</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:HTTPRequest" class="def">HTTPRequest</a>  </p><div class="doc"><p>HTTP Request type
- This holds a complete HTTP request
-</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:HTTPRequest" class="def">HTTPRequest</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:method" class="def">method</a> &#8759; ByteString</dt><dd class="doc"><p>Get HTTP Request Method (GET, POST etc.)
-</p></dd><dt class="src"><a name="v:uri" class="def">uri</a> &#8759; ByteString</dt><dd class="doc"><p>Get Request URI
-</p></dd><dt class="src"><a name="v:httpver" class="def">httpver</a> &#8759; ByteString</dt><dd class="doc"><p>Get HTTP Version
-</p></dd><dt class="src"><a name="v:headers" class="def">headers</a> &#8759; <a href="Ketchup-Httpd.html#t:Headers">Headers</a></dt><dd class="doc"><p>Get HTTP Headers (header, [values])
-</p></dd><dt class="src"><a name="v:body" class="def">body</a> &#8759; ByteString</dt><dd class="doc"><p>Get HTTP Post body (raw string)
-</p></dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:HTTPRequest" class="caption collapser" onclick="toggleSection('i:HTTPRequest')">Instances</p><div id="section.i:HTTPRequest" class="show"><table><tr><td class="src">Show <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Headers" class="def">Headers</a> = [(ByteString, [ByteString])]</p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Handler" class="def">Handler</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; IO ()</p></div><div class="top"><p class="src"><a name="v:listenHTTP" class="def">listenHTTP</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; String</td><td class="doc"><p>Address to bind (ie. <a href="*.html">*</a>)
-</p></td></tr><tr><td class="src">&#8594; PortNumber</td><td class="doc"><p>Port to listen on
-</p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc"><p>Route function to call
-</p></td></tr><tr><td class="src">&#8594; IO ()</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Listens for incoming HTTP request
-</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
diff --git a/docs/Ketchup-Routing.html b/docs/Ketchup-Routing.html
deleted file mode 100644
--- a/docs/Ketchup-Routing.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Routing</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Routing.html");};
-//]]>
-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Routing</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">type</span> <a href="#t:Route">Route</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; (ByteString &#8594; Maybe ByteString) &#8594; IO ()</li><li class="src short"><a href="#v:route">route</a> &#8759; [(ByteString, <a href="Ketchup-Routing.html#t:Route">Route</a>)] &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></li><li class="src short"><a href="#v:useHandler">useHandler</a> &#8759; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; <a href="Ketchup-Routing.html#t:Route">Route</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:Route" class="def">Route</a> = Socket &#8594; <a href="Ketchup-Httpd.html#t:HTTPRequest">HTTPRequest</a> &#8594; (ByteString &#8594; Maybe ByteString) &#8594; IO ()</p></div><div class="top"><p class="src"><a name="v:route" class="def">route</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; [(ByteString, <a href="Ketchup-Routing.html#t:Route">Route</a>)]</td><td class="doc"><p>Routes
-</p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Router function
- Takes a list of routes and iterates through them for every requeust
-</p></div></div><div class="top"><p class="src"><a name="v:useHandler" class="def">useHandler</a> &#8759; <a href="Ketchup-Httpd.html#t:Handler">Handler</a> &#8594; <a href="Ketchup-Routing.html#t:Route">Route</a></p><div class="doc"><p>Wrap a handler in a route
- Lets you use a handler (no parameters) as a route
-</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
diff --git a/docs/Ketchup-Static.html b/docs/Ketchup-Static.html
deleted file mode 100644
--- a/docs/Ketchup-Static.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Static</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Static.html");};
-//]]>
-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Static</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:static">static</a> &#8759; ByteString &#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:static" class="def">static</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; ByteString</td><td class="doc"><p>Path to serve static files from
-</p></td></tr><tr><td class="src">&#8594; <a href="Ketchup-Httpd.html#t:Handler">Handler</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Static file handler
- Takes a directory and returns a route
-</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
diff --git a/docs/Ketchup-Utils.html b/docs/Ketchup-Utils.html
deleted file mode 100644
--- a/docs/Ketchup-Utils.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Utils</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();setSynopsis("mini_Ketchup-Utils.html");};
-//]]>
-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">Ketchup.Utils</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:trim">trim</a> &#8759; ByteString &#8594; ByteString</li><li class="src short"><a href="#v:breakBS">breakBS</a> &#8759; ByteString &#8594; ByteString &#8594; (ByteString, ByteString)</li><li class="src short"><a href="#v:fallback">fallback</a> &#8759;  Maybe a &#8594; a &#8594; a</li><li class="src short"><a href="#v:parseBody">parseBody</a> &#8759; ByteString &#8594; [(ByteString, ByteString)]</li><li class="src short"><a href="#v:sendReply">sendReply</a> &#8759; Socket &#8594; Int &#8594; [(ByteString, [ByteString])] &#8594; ByteString &#8594; IO ()</li><li class="src short"><a href="#v:sendBadRequest">sendBadRequest</a> &#8759; Socket &#8594; IO ()</li><li class="src short"><a href="#v:sendNotFound">sendNotFound</a> &#8759; Socket &#8594; IO ()</li><li class="src short"><a href="#v:statusMsg">statusMsg</a> &#8759; Int &#8594; ByteString</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:trim" class="def">trim</a> &#8759; ByteString &#8594; ByteString</p><div class="doc"><p>Trim whitespace from headers
-</p></div></div><div class="top"><p class="src"><a name="v:breakBS" class="def">breakBS</a> &#8759; ByteString &#8594; ByteString &#8594; (ByteString, ByteString)</p><div class="doc"><p>ByteString breakSubstring wrapper that drops delimiters
-</p></div></div><div class="top"><p class="src"><a name="v:fallback" class="def">fallback</a> &#8759;  Maybe a &#8594; a &#8594; a</p></div><div class="top"><p class="src"><a name="v:parseBody" class="def">parseBody</a> &#8759; ByteString &#8594; [(ByteString, ByteString)]</p><div class="doc"><p>Parse a URL-encoded Request
-</p></div></div><div class="top"><p class="src"><a name="v:sendReply" class="def">sendReply</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; Socket</td><td class="doc"><p>Socket to write to
-</p></td></tr><tr><td class="src">&#8594; Int</td><td class="doc"><p>Status Code to send
-</p></td></tr><tr><td class="src">&#8594; [(ByteString, [ByteString])]</td><td class="doc"><p>HTTP headers (<a href="Header.html">Header</a>,[<a href="value1.html">value1</a>, <a href="value2.html">value2</a>])
-</p></td></tr><tr><td class="src">&#8594; ByteString</td><td class="doc"><p>Body
-</p></td></tr><tr><td class="src">&#8594; IO ()</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>Send a HTTP reply
- Sends a reply with the given parameters
-</p></div></div><div class="top"><p class="src"><a name="v:sendBadRequest" class="def">sendBadRequest</a> &#8759; Socket &#8594; IO ()</p><div class="doc"><p>Send 400 Bad Request error
-</p></div></div><div class="top"><p class="src"><a name="v:sendNotFound" class="def">sendNotFound</a> &#8759; Socket &#8594; IO ()</p><div class="doc"><p>Send 404 Not Found error
-</p></div></div><div class="top"><p class="src"><a name="v:statusMsg" class="def">statusMsg</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&#8759; Int</td><td class="doc"><p>Status code (ex. 404)
-</p></td></tr><tr><td class="src">&#8594; ByteString</td><td class="doc"><p>Status message (ex. <a href="404 Not Found.html">404 Not Found</a>)
-</p></td></tr></table></div><div class="doc"><p>Status Messages
- Returns status message from a given status id
-</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
diff --git a/docs/doc-index.html b/docs/doc-index.html
deleted file mode 100644
--- a/docs/doc-index.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title> (Index)</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="index"><p class="caption">Index</p><table><tr><td class="src">basicAuth</td><td class="module"><a href="Ketchup-Auth.html#v:basicAuth">Ketchup.Auth</a></td></tr><tr><td class="src">body</td><td class="module"><a href="Ketchup-Httpd.html#v:body">Ketchup.Httpd</a></td></tr><tr><td class="src">breakBS</td><td class="module"><a href="Ketchup-Utils.html#v:breakBS">Ketchup.Utils</a></td></tr><tr><td class="src">chunk</td><td class="module"><a href="Ketchup-Chunked.html#v:chunk">Ketchup.Chunked</a></td></tr><tr><td class="src">chunkHeaders</td><td class="module"><a href="Ketchup-Chunked.html#v:chunkHeaders">Ketchup.Chunked</a></td></tr><tr><td class="src">endchunk</td><td class="module"><a href="Ketchup-Chunked.html#v:endchunk">Ketchup.Chunked</a></td></tr><tr><td class="src">fallback</td><td class="module"><a href="Ketchup-Utils.html#v:fallback">Ketchup.Utils</a></td></tr><tr><td class="src">Handler</td><td class="module"><a href="Ketchup-Httpd.html#t:Handler">Ketchup.Httpd</a></td></tr><tr><td class="src">Headers</td><td class="module"><a href="Ketchup-Httpd.html#t:Headers">Ketchup.Httpd</a></td></tr><tr><td class="src">headers</td><td class="module"><a href="Ketchup-Httpd.html#v:headers">Ketchup.Httpd</a></td></tr><tr><td class="src">HTTPRequest</td><td>&nbsp;</td></tr><tr><td class="alt">1 (Type/Class)</td><td class="module"><a href="Ketchup-Httpd.html#t:HTTPRequest">Ketchup.Httpd</a></td></tr><tr><td class="alt">2 (Data Constructor)</td><td class="module"><a href="Ketchup-Httpd.html#v:HTTPRequest">Ketchup.Httpd</a></td></tr><tr><td class="src">httpver</td><td class="module"><a href="Ketchup-Httpd.html#v:httpver">Ketchup.Httpd</a></td></tr><tr><td class="src">listenHTTP</td><td class="module"><a href="Ketchup-Httpd.html#v:listenHTTP">Ketchup.Httpd</a></td></tr><tr><td class="src">method</td><td class="module"><a href="Ketchup-Httpd.html#v:method">Ketchup.Httpd</a></td></tr><tr><td class="src">parseBody</td><td class="module"><a href="Ketchup-Utils.html#v:parseBody">Ketchup.Utils</a></td></tr><tr><td class="src">Route</td><td class="module"><a href="Ketchup-Routing.html#t:Route">Ketchup.Routing</a></td></tr><tr><td class="src">route</td><td class="module"><a href="Ketchup-Routing.html#v:route">Ketchup.Routing</a></td></tr><tr><td class="src">sendBadRequest</td><td class="module"><a href="Ketchup-Utils.html#v:sendBadRequest">Ketchup.Utils</a></td></tr><tr><td class="src">sendNotFound</td><td class="module"><a href="Ketchup-Utils.html#v:sendNotFound">Ketchup.Utils</a></td></tr><tr><td class="src">sendReply</td><td class="module"><a href="Ketchup-Utils.html#v:sendReply">Ketchup.Utils</a></td></tr><tr><td class="src">static</td><td class="module"><a href="Ketchup-Static.html#v:static">Ketchup.Static</a></td></tr><tr><td class="src">statusMsg</td><td class="module"><a href="Ketchup-Utils.html#v:statusMsg">Ketchup.Utils</a></td></tr><tr><td class="src">trim</td><td class="module"><a href="Ketchup-Utils.html#v:trim">Ketchup.Utils</a></td></tr><tr><td class="src">uri</td><td class="module"><a href="Ketchup-Httpd.html#v:uri">Ketchup.Httpd</a></td></tr><tr><td class="src">useHandler</td><td class="module"><a href="Ketchup-Routing.html#v:useHandler">Ketchup.Routing</a></td></tr></table></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
diff --git a/docs/frames.html b/docs/frames.html
deleted file mode 100644
--- a/docs/frames.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<!DOCTYPE html 
-     PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
-     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title></title>
-<script src="haddock-util.js" type="text/javascript"></script>
-<script type="text/javascript"><!--
-/*
-
-  The synopsis frame needs to be updated using javascript, so we hide
-  it by default and only show it if javascript is enabled.
-
-  TODO: provide some means to disable it.
-*/
-function load() {
-  var d = document.getElementById("inner-fs");
-  d.rows = "50%,50%";
-  postReframe();
-}
---></script>
-</head>
-<frameset id="outer-fs" cols="25%,75%" onload="load()">
-  <frameset id="inner-fs" rows="100%,0%">
-    <frame src="index-frames.html" name="modules" />
-    <frame src="" name="synopsis" />
-  </frameset>
-  <frame src="index.html" name="main" />
-</frameset>
-</html>
diff --git a/docs/haddock-util.js b/docs/haddock-util.js
deleted file mode 100644
--- a/docs/haddock-util.js
+++ /dev/null
@@ -1,344 +0,0 @@
-// Haddock JavaScript utilities
-
-var rspace = /\s\s+/g,
-	  rtrim = /^\s+|\s+$/g;
-
-function spaced(s) { return (" " + s + " ").replace(rspace, " "); }
-function trim(s)   { return s.replace(rtrim, ""); }
-
-function hasClass(elem, value) {
-  var className = spaced(elem.className || "");
-  return className.indexOf( " " + value + " " ) >= 0;
-}
-
-function addClass(elem, value) {
-  var className = spaced(elem.className || "");
-  if ( className.indexOf( " " + value + " " ) < 0 ) {
-    elem.className = trim(className + " " + value);
-  }
-}
-
-function removeClass(elem, value) {
-  var className = spaced(elem.className || "");
-  className = className.replace(" " + value + " ", " ");
-  elem.className = trim(className);
-}
-
-function toggleClass(elem, valueOn, valueOff, bool) {
-  if (bool == null) { bool = ! hasClass(elem, valueOn); }
-  if (bool) {
-    removeClass(elem, valueOff);
-    addClass(elem, valueOn);
-  }
-  else {
-    removeClass(elem, valueOn);
-    addClass(elem, valueOff);
-  }
-  return bool;
-}
-
-
-function makeClassToggle(valueOn, valueOff)
-{
-  return function(elem, bool) {
-    return toggleClass(elem, valueOn, valueOff, bool);
-  }
-}
-
-toggleShow = makeClassToggle("show", "hide");
-toggleCollapser = makeClassToggle("collapser", "expander");
-
-function toggleSection(id)
-{
-  var b = toggleShow(document.getElementById("section." + id));
-  toggleCollapser(document.getElementById("control." + id), b);
-  rememberCollapsed(id, b);
-  return b;
-}
-
-var collapsed = {};
-function rememberCollapsed(id, b)
-{
-  if(b)
-    delete collapsed[id]
-  else
-    collapsed[id] = null;
-
-  var sections = [];
-  for(var i in collapsed)
-  {
-    if(collapsed.hasOwnProperty(i))
-      sections.push(i);
-  }
-  // cookie specific to this page; don't use setCookie which sets path=/
-  document.cookie = "collapsed=" + escape(sections.join('+'));
-}
-
-function restoreCollapsed()
-{
-  var cookie = getCookie("collapsed");
-  if(!cookie)
-    return;
-
-  var ids = cookie.split('+');
-  for(var i in ids)
-  {
-    if(document.getElementById("section." + ids[i]))
-      toggleSection(ids[i]);
-  }
-}
-
-function setCookie(name, value) {
-  document.cookie = name + "=" + escape(value) + ";path=/;";
-}
-
-function clearCookie(name) {
-  document.cookie = name + "=;path=/;expires=Thu, 01-Jan-1970 00:00:01 GMT;";
-}
-
-function getCookie(name) {
-  var nameEQ = name + "=";
-  var ca = document.cookie.split(';');
-  for(var i=0;i < ca.length;i++) {
-    var c = ca[i];
-    while (c.charAt(0)==' ') c = c.substring(1,c.length);
-    if (c.indexOf(nameEQ) == 0) {
-      return unescape(c.substring(nameEQ.length,c.length));
-    }
-  }
-  return null;
-}
-
-
-
-var max_results = 75; // 50 is not enough to search for map in the base libraries
-var shown_range = null;
-var last_search = null;
-
-function quick_search()
-{
-    perform_search(false);
-}
-
-function full_search()
-{
-    perform_search(true);
-}
-
-
-function perform_search(full)
-{
-    var text = document.getElementById("searchbox").value.toLowerCase();
-    if (text == last_search && !full) return;
-    last_search = text;
-    
-    var table = document.getElementById("indexlist");
-    var status = document.getElementById("searchmsg");
-    var children = table.firstChild.childNodes;
-    
-    // first figure out the first node with the prefix
-    var first = bisect(-1);
-    var last = (first == -1 ? -1 : bisect(1));
-
-    if (first == -1)
-    {
-        table.className = "";
-        status.innerHTML = "No results found, displaying all";
-    }
-    else if (first == 0 && last == children.length - 1)
-    {
-        table.className = "";
-        status.innerHTML = "";
-    }
-    else if (last - first >= max_results && !full)
-    {
-        table.className = "";
-        status.innerHTML = "More than " + max_results + ", press Search to display";
-    }
-    else
-    {
-        // decide what you need to clear/show
-        if (shown_range)
-            setclass(shown_range[0], shown_range[1], "indexrow");
-        setclass(first, last, "indexshow");
-        shown_range = [first, last];
-        table.className = "indexsearch";
-        status.innerHTML = "";
-    }
-
-    
-    function setclass(first, last, status)
-    {
-        for (var i = first; i <= last; i++)
-        {
-            children[i].className = status;
-        }
-    }
-    
-    
-    // do a binary search, treating 0 as ...
-    // return either -1 (no 0's found) or location of most far match
-    function bisect(dir)
-    {
-        var first = 0, finish = children.length - 1;
-        var mid, success = false;
-
-        while (finish - first > 3)
-        {
-            mid = Math.floor((finish + first) / 2);
-
-            var i = checkitem(mid);
-            if (i == 0) i = dir;
-            if (i == -1)
-                finish = mid;
-            else
-                first = mid;
-        }
-        var a = (dir == 1 ? first : finish);
-        var b = (dir == 1 ? finish : first);
-        for (var i = b; i != a - dir; i -= dir)
-        {
-            if (checkitem(i) == 0) return i;
-        }
-        return -1;
-    }    
-    
-    
-    // from an index, decide what the result is
-    // 0 = match, -1 is lower, 1 is higher
-    function checkitem(i)
-    {
-        var s = getitem(i).toLowerCase().substr(0, text.length);
-        if (s == text) return 0;
-        else return (s > text ? -1 : 1);
-    }
-    
-    
-    // from an index, get its string
-    // this abstracts over alternates
-    function getitem(i)
-    {
-        for ( ; i >= 0; i--)
-        {
-            var s = children[i].firstChild.firstChild.data;
-            if (s.indexOf(' ') == -1)
-                return s;
-        }
-        return ""; // should never be reached
-    }
-}
-
-function setSynopsis(filename) {
-    if (parent.window.synopsis) {
-        if (parent.window.synopsis.location.replace) {
-            // In Firefox this avoids adding the change to the history.
-            parent.window.synopsis.location.replace(filename);
-        } else {
-            parent.window.synopsis.location = filename;
-        }
-    }
-}
-
-function addMenuItem(html) {
-  var menu = document.getElementById("page-menu");
-  if (menu) {
-    var btn = menu.firstChild.cloneNode(false);
-    btn.innerHTML = html;
-    menu.appendChild(btn);
-  }
-}
-
-function adjustForFrames() {
-  var bodyCls;
-  
-  if (parent.location.href == window.location.href) {
-    // not in frames, so add Frames button
-    addMenuItem("<a href='#' onclick='reframe();return true;'>Frames</a>");
-    bodyCls = "no-frame";
-  }
-  else {
-    bodyCls = "in-frame";
-  }
-  addClass(document.body, bodyCls);
-}
-
-function reframe() {
-  setCookie("haddock-reframe", document.URL);
-  window.location = "frames.html";
-}
-
-function postReframe() {
-  var s = getCookie("haddock-reframe");
-  if (s) {
-    parent.window.main.location = s;
-    clearCookie("haddock-reframe");
-  }
-}
-
-function styles() {
-  var i, a, es = document.getElementsByTagName("link"), rs = [];
-  for (i = 0; a = es[i]; i++) {
-    if(a.rel.indexOf("style") != -1 && a.title) {
-      rs.push(a);
-    }
-  }
-  return rs;
-}
-
-function addStyleMenu() {
-  var as = styles();
-  var i, a, btns = "";
-  for(i=0; a = as[i]; i++) {
-    btns += "<li><a href='#' onclick=\"setActiveStyleSheet('"
-      + a.title + "'); return false;\">"
-      + a.title + "</a></li>"
-  }
-  if (as.length > 1) {
-    var h = "<div id='style-menu-holder'>"
-      + "<a href='#' onclick='styleMenu(); return false;'>Style &#9662;</a>"
-      + "<ul id='style-menu' class='hide'>" + btns + "</ul>"
-      + "</div>";
-    addMenuItem(h);
-  }
-}
-
-function setActiveStyleSheet(title) {
-  var as = styles();
-  var i, a, found;
-  for(i=0; a = as[i]; i++) {
-    a.disabled = true;
-          // need to do this always, some browsers are edge triggered
-    if(a.title == title) {
-      found = a;
-    }
-  }
-  if (found) {
-    found.disabled = false;
-    setCookie("haddock-style", title);
-  }
-  else {
-    as[0].disabled = false;
-    clearCookie("haddock-style");
-  }
-  styleMenu(false);
-}
-
-function resetStyle() {
-  var s = getCookie("haddock-style");
-  if (s) setActiveStyleSheet(s);
-}
-
-
-function styleMenu(show) {
-  var m = document.getElementById('style-menu');
-  if (m) toggleShow(m, show);
-}
-
-
-function pageLoad() {
-  addStyleMenu();
-  adjustForFrames();
-  resetStyle();
-  restoreCollapsed();
-}
-
diff --git a/docs/hslogo-16.png b/docs/hslogo-16.png
deleted file mode 100644
Binary files a/docs/hslogo-16.png and /dev/null differ
diff --git a/docs/index-frames.html b/docs/index-frames.html
deleted file mode 100644
--- a/docs/index-frames.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title></title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body id="mini"><div id="module-list"><p class="caption">Modules</p><ul><li class="module"><a href="Ketchup-Auth.html" target="main">Ketchup.Auth</a></li><li class="module"><a href="Ketchup-Chunked.html" target="main">Ketchup.Chunked</a></li><li class="module"><a href="Ketchup-Httpd.html" target="main">Ketchup.Httpd</a></li><li class="module"><a href="Ketchup-Routing.html" target="main">Ketchup.Routing</a></li><li class="module"><a href="Ketchup-Static.html" target="main">Ketchup.Static</a></li><li class="module"><a href="Ketchup-Utils.html" target="main">Ketchup.Utils</a></li></ul></div></body></html>
diff --git a/docs/index.html b/docs/index.html
deleted file mode 100644
--- a/docs/index.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title></title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty">&nbsp;</p></div><div id="content"><div id="module-list"><p class="caption">Modules</p><ul><li><span id="control.n.1" class="module collapser" onclick="toggleSection('n.1')">Ketchup</span><ul id="section.n.1" class="show"><li><span class="module"><a href="Ketchup-Auth.html">Ketchup.Auth</a></span></li><li><span class="module"><a href="Ketchup-Chunked.html">Ketchup.Chunked</a></span></li><li><span class="module"><a href="Ketchup-Httpd.html">Ketchup.Httpd</a></span></li><li><span class="module"><a href="Ketchup-Routing.html">Ketchup.Routing</a></span></li><li><span class="module"><a href="Ketchup-Static.html">Ketchup.Static</a></span></li><li><span class="module"><a href="Ketchup-Utils.html">Ketchup.Utils</a></span></li></ul></li></ul></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
diff --git a/docs/main.txt b/docs/main.txt
deleted file mode 100644
--- a/docs/main.txt
+++ /dev/null
@@ -1,87 +0,0 @@
--- Hoogle documentation, generated by Haddock
--- See Hoogle, http://www.haskell.org/hoogle/
-
-@package main
-
-module Ketchup.Utils
-
--- | Trim whitespace from headers
-trim :: ByteString -> ByteString
-
--- | ByteString breakSubstring wrapper that drops delimiters
-breakBS :: ByteString -> ByteString -> (ByteString, ByteString)
-fallback :: Maybe a -> a -> a
-
--- | Parse a URL-encoded Request
-parseBody :: ByteString -> [(ByteString, ByteString)]
-
--- | Send a HTTP reply Sends a reply with the given parameters
-sendReply :: Socket -> Int -> [(ByteString, [ByteString])] -> ByteString -> IO ()
-
--- | Send 400 Bad Request error
-sendBadRequest :: Socket -> IO ()
-
--- | Send 404 Not Found error
-sendNotFound :: Socket -> IO ()
-
--- | Status Messages Returns status message from a given status id
-statusMsg :: Int -> ByteString
-
-module Ketchup.Httpd
-
--- | HTTP Request type This holds a complete HTTP request
-data HTTPRequest
-HTTPRequest :: ByteString -> ByteString -> ByteString -> Headers -> ByteString -> HTTPRequest
-
--- | Get HTTP Request Method (GET, POST etc.)
-method :: HTTPRequest -> ByteString
-
--- | Get Request URI
-uri :: HTTPRequest -> ByteString
-
--- | Get HTTP Version
-httpver :: HTTPRequest -> ByteString
-
--- | Get HTTP Headers (header, [values])
-headers :: HTTPRequest -> Headers
-
--- | Get HTTP Post body (raw string)
-body :: HTTPRequest -> ByteString
-type Headers = [(ByteString, [ByteString])]
-type Handler = Socket -> HTTPRequest -> IO ()
-
--- | Listens for incoming HTTP request
-listenHTTP :: String -> PortNumber -> Handler -> IO ()
-instance Show HTTPRequest
-
-module Ketchup.Chunked
-
--- | Send HTTP reply headers and begin a Chunked transmission
-chunkHeaders :: Socket -> Int -> [(ByteString, [ByteString])] -> IO ()
-
--- | Sends a chunk
-chunk :: Socket -> ByteString -> IO ()
-
--- | Send the final/closing chunk
-endchunk :: Socket -> IO ()
-
-module Ketchup.Routing
-type Route = Socket -> HTTPRequest -> (ByteString -> Maybe ByteString) -> IO ()
-
--- | Router function Takes a list of routes and iterates through them for
---   every requeust
-route :: [(ByteString, Route)] -> Handler
-
--- | Wrap a handler in a route Lets you use a handler (no parameters) as a
---   route
-useHandler :: Handler -> Route
-
-module Ketchup.Static
-
--- | Static file handler Takes a directory and returns a route
-static :: ByteString -> Handler
-
-module Ketchup.Auth
-
--- | Performs HTTP Basic Auth
-basicAuth :: [(ByteString, ByteString)] -> ByteString -> Handler -> Handler
diff --git a/docs/mini_Ketchup-Auth.html b/docs/mini_Ketchup-Auth.html
deleted file mode 100644
--- a/docs/mini_Ketchup-Auth.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Auth</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Auth</p></div><div id="interface"><div class="top"><p class="src"><a href="Ketchup-Auth.html#v:basicAuth" target="main">basicAuth</a></p></div></div></body></html>
diff --git a/docs/mini_Ketchup-Chunked.html b/docs/mini_Ketchup-Chunked.html
deleted file mode 100644
--- a/docs/mini_Ketchup-Chunked.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Chunked</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Chunked</p></div><div id="interface"><div class="top"><p class="src"><a href="Ketchup-Chunked.html#v:chunkHeaders" target="main">chunkHeaders</a></p></div><div class="top"><p class="src"><a href="Ketchup-Chunked.html#v:chunk" target="main">chunk</a></p></div><div class="top"><p class="src"><a href="Ketchup-Chunked.html#v:endchunk" target="main">endchunk</a></p></div></div></body></html>
diff --git a/docs/mini_Ketchup-Httpd.html b/docs/mini_Ketchup-Httpd.html
deleted file mode 100644
--- a/docs/mini_Ketchup-Httpd.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Httpd</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Httpd</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">data</span> <a href="Ketchup-Httpd.html#t:HTTPRequest" target="main">HTTPRequest</a> </p></div><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ketchup-Httpd.html#t:Headers" target="main">Headers</a> </p></div><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ketchup-Httpd.html#t:Handler" target="main">Handler</a> </p></div><div class="top"><p class="src"><a href="Ketchup-Httpd.html#v:listenHTTP" target="main">listenHTTP</a></p></div></div></body></html>
diff --git a/docs/mini_Ketchup-Routing.html b/docs/mini_Ketchup-Routing.html
deleted file mode 100644
--- a/docs/mini_Ketchup-Routing.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Routing</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Routing</p></div><div id="interface"><div class="top"><p class="src"><span class="keyword">type</span> <a href="Ketchup-Routing.html#t:Route" target="main">Route</a> </p></div><div class="top"><p class="src"><a href="Ketchup-Routing.html#v:route" target="main">route</a></p></div><div class="top"><p class="src"><a href="Ketchup-Routing.html#v:useHandler" target="main">useHandler</a></p></div></div></body></html>
diff --git a/docs/mini_Ketchup-Static.html b/docs/mini_Ketchup-Static.html
deleted file mode 100644
--- a/docs/mini_Ketchup-Static.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Static</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Static</p></div><div id="interface"><div class="top"><p class="src"><a href="Ketchup-Static.html#v:static" target="main">static</a></p></div></div></body></html>
diff --git a/docs/mini_Ketchup-Utils.html b/docs/mini_Ketchup-Utils.html
deleted file mode 100644
--- a/docs/mini_Ketchup-Utils.html
+++ /dev/null
@@ -1,4 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Ketchup.Utils</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
-window.onload = function () {pageLoad();};
-//]]>
-</script></head><body id="mini"><div id="module-header"><p class="caption">Ketchup.Utils</p></div><div id="interface"><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:trim" target="main">trim</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:breakBS" target="main">breakBS</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:fallback" target="main">fallback</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:parseBody" target="main">parseBody</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendReply" target="main">sendReply</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendBadRequest" target="main">sendBadRequest</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:sendNotFound" target="main">sendNotFound</a></p></div><div class="top"><p class="src"><a href="Ketchup-Utils.html#v:statusMsg" target="main">statusMsg</a></p></div></div></body></html>
diff --git a/docs/minus.gif b/docs/minus.gif
deleted file mode 100644
Binary files a/docs/minus.gif and /dev/null differ
diff --git a/docs/ocean.css b/docs/ocean.css
deleted file mode 100644
--- a/docs/ocean.css
+++ /dev/null
@@ -1,546 +0,0 @@
-/* @group Fundamentals */
-
-* { margin: 0; padding: 0 }
-
-/* Is this portable? */
-html {
-  background-color: white;
-  width: 100%;
-  height: 100%;
-}
-
-body {
-  background: white;
-  color: black;
-  text-align: left;
-  min-height: 100%;
-  position: relative;
-}
-
-p {
-  margin: 0.8em 0;
-}
-
-ul, ol {
-  margin: 0.8em 0 0.8em 2em;
-}
-
-dl {
-  margin: 0.8em 0;
-}
-
-dt {
-  font-weight: bold;
-}
-dd {
-  margin-left: 2em;
-}
-
-a { text-decoration: none; }
-a[href]:link { color: rgb(196,69,29); }
-a[href]:visited { color: rgb(171,105,84); }
-a[href]:hover { text-decoration:underline; }
-
-/* @end */
-
-/* @group Fonts & Sizes */
-
-/* Basic technique & IE workarounds from YUI 3
-   For reasons, see:
-      http://yui.yahooapis.com/3.1.1/build/cssfonts/fonts.css
- */
- 
-body {
-	font:13px/1.4 sans-serif;
-	*font-size:small; /* for IE */
-	*font:x-small; /* for IE in quirks mode */
-}
-
-h1 { font-size: 146.5%; /* 19pt */ } 
-h2 { font-size: 131%;   /* 17pt */ }
-h3 { font-size: 116%;   /* 15pt */ }
-h4 { font-size: 100%;   /* 13pt */ }
-h5 { font-size: 100%;   /* 13pt */ }
-
-select, input, button, textarea {
-	font:99% sans-serif;
-}
-
-table {
-	font-size:inherit;
-	font:100%;
-}
-
-pre, code, kbd, samp, tt, .src {
-	font-family:monospace;
-	*font-size:108%;
-	line-height: 124%;
-}
-
-.links, .link {
-  font-size: 85%; /* 11pt */
-}
-
-#module-header .caption {
-  font-size: 182%; /* 24pt */
-}
-
-.info  {
-  font-size: 85%; /* 11pt */
-}
-
-#table-of-contents, #synopsis  {
-  /* font-size: 85%; /* 11pt */
-}
-
-
-/* @end */
-
-/* @group Common */
-
-.caption, h1, h2, h3, h4, h5, h6 { 
-  font-weight: bold;
-  color: rgb(78,98,114);
-  margin: 0.8em 0 0.4em;
-}
-
-* + h1, * + h2, * + h3, * + h4, * + h5, * + h6 {
-  margin-top: 2em;
-}
-
-h1 + h2, h2 + h3, h3 + h4, h4 + h5, h5 + h6 {
-  margin-top: inherit;
-}
-
-ul.links {
-  list-style: none;
-  text-align: left;
-  float: right;
-  display: inline-table;
-  margin: 0 0 0 1em;
-}
-
-ul.links li {
-  display: inline;
-  border-left: 1px solid #d5d5d5; 
-  white-space: nowrap;
-  padding: 0;
-}
-
-ul.links li a {
-  padding: 0.2em 0.5em;
-}
-
-.hide { display: none; }
-.show { display: inherit; }
-.clear { clear: both; }
-
-.collapser {
-  background-image: url(minus.gif);
-  background-repeat: no-repeat;
-}
-.expander {
-  background-image: url(plus.gif);
-  background-repeat: no-repeat;
-}
-p.caption.collapser,
-p.caption.expander {
-  background-position: 0 0.4em;
-}
-.collapser, .expander {
-  padding-left: 14px;
-  margin-left: -14px;
-  cursor: pointer;
-}
-
-pre {
-  padding: 0.25em;
-  margin: 0.8em 0;
-  background: rgb(229,237,244);
-  overflow: auto;
-  border-bottom: 0.25em solid white;
-  /* white border adds some space below the box to compensate
-     for visual extra space that paragraphs have between baseline
-     and the bounding box */
-}
-
-.src {
-  background: #f0f0f0;
-  padding: 0.2em 0.5em;
-}
-
-.keyword { font-weight: normal; }
-.def { font-weight: bold; }
-
-
-/* @end */
-
-/* @group Page Structure */
-
-#content {
-  margin: 0 auto;
-  padding: 0 2em 6em;
-}
-
-#package-header {
-  background: rgb(41,56,69);
-  border-top: 5px solid rgb(78,98,114);
-  color: #ddd;
-  padding: 0.2em;
-  position: relative;
-  text-align: left;
-}
-
-#package-header .caption {
-  background: url(hslogo-16.png) no-repeat 0em;
-  color: white;
-  margin: 0 2em;
-  font-weight: normal;
-  font-style: normal;
-  padding-left: 2em;
-}
-
-#package-header a:link, #package-header a:visited { color: white; }
-#package-header a:hover { background: rgb(78,98,114); }
-
-#module-header .caption {
-  color: rgb(78,98,114);
-  font-weight: bold;
-  border-bottom: 1px solid #ddd;
-}
-
-table.info {
-  float: right;
-  padding: 0.5em 1em;
-  border: 1px solid #ddd;
-  color: rgb(78,98,114);
-  background-color: #fff;
-  max-width: 40%;
-  border-spacing: 0;
-  position: relative;
-  top: -0.5em;
-  margin: 0 0 0 2em;
-}
-
-.info th {
-	padding: 0 1em 0 0;
-}
-
-div#style-menu-holder {
-  position: relative;
-  z-index: 2;
-  display: inline;
-}
-
-#style-menu {
-  position: absolute;
-  z-index: 1;
-  overflow: visible;
-  background: #374c5e;
-  margin: 0;
-  text-align: center;
-  right: 0;
-  padding: 0;
-  top: 1.25em;
-}
-
-#style-menu li {
-	display: list-item;
-	border-style: none;
-	margin: 0;
-	padding: 0;
-	color: #000;
-	list-style-type: none;
-}
-
-#style-menu li + li {
-	border-top: 1px solid #919191;
-}
-
-#style-menu a {
-  width: 6em;
-  padding: 3px;
-  display: block;
-}
-
-#footer {
-  background: #ddd;
-  border-top: 1px solid #aaa;
-  padding: 0.5em 0;
-  color: #666;
-  text-align: center;
-  position: absolute;
-  bottom: 0;
-  width: 100%;
-  height: 3em;
-}
-
-/* @end */
-
-/* @group Front Matter */
-
-#table-of-contents {
-  float: right;
-  clear: right;
-  background: #faf9dc;
-  border: 1px solid #d8d7ad;
-  padding: 0.5em 1em;
-  max-width: 20em;
-  margin: 0.5em 0 1em 1em;
-}
-
-#table-of-contents .caption {
-  text-align: center;
-  margin: 0;
-}
-
-#table-of-contents ul {
-  list-style: none;
-  margin: 0;
-}
-
-#table-of-contents ul ul {
-  margin-left: 2em;
-}
-
-#description .caption {
-  display: none;
-}
-
-#synopsis {
-  display: none;
-}
-
-.no-frame #synopsis {
-  display: block;
-  position: fixed;
-  right: 0;
-  height: 80%;
-  top: 10%;
-  padding: 0;
-}
-
-#synopsis .caption {
-  float: left;
-  width: 29px;
-  color: rgba(255,255,255,0);
-  height: 110px;
-  margin: 0;
-  font-size: 1px;
-  padding: 0;
-}
-
-#synopsis p.caption.collapser {
-  background: url(synopsis.png) no-repeat -64px -8px;
-}
-
-#synopsis p.caption.expander {
-  background: url(synopsis.png) no-repeat 0px -8px;
-}
-
-#synopsis ul {
-  height: 100%;
-  overflow: auto;
-  padding: 0.5em;
-  margin: 0;
-}
-
-#synopsis ul ul {
-  overflow: hidden;
-}
-
-#synopsis ul,
-#synopsis ul li.src {
-  background-color: #faf9dc;
-  white-space: nowrap;
-  list-style: none;
-  margin-left: 0;
-}
-
-/* @end */
-
-/* @group Main Content */
-
-#interface div.top { margin: 2em 0; }
-#interface h1 + div.top,
-#interface h2 + div.top,
-#interface h3 + div.top,
-#interface h4 + div.top,
-#interface h5 + div.top {
- 	margin-top: 1em;
-}
-#interface p.src .link {
-  float: right;
-  color: #919191;
-  border-left: 1px solid #919191;
-  background: #f0f0f0;
-  padding: 0 0.5em 0.2em;
-  margin: 0 -0.5em 0 0.5em;
-}
-
-#interface table { border-spacing: 2px; }
-#interface td {
-  vertical-align: top;
-  padding-left: 0.5em;
-}
-#interface td.src {
-  white-space: nowrap;
-}
-#interface td.doc p {
-  margin: 0;
-}
-#interface td.doc p + p {
-  margin-top: 0.8em;
-}
-
-.subs dl {
-  margin: 0;
-}
-
-.subs dt {
-  float: left;
-  clear: left;
-  display: block;
-  margin: 1px 0;
-}
-
-.subs dd {
-  float: right;
-  width: 90%;
-  display: block;
-  padding-left: 0.5em;
-  margin-bottom: 0.5em;
-}
-
-.subs dd.empty {
-  display: none;
-}
-
-.subs dd p {
-  margin: 0;
-}
-
-.top p.src {
-  border-top: 1px solid #ccc;
-}
-
-.subs, .doc {
-  /* use this selector for one level of indent */
-  padding-left: 2em;
-}
-
-.warning {
-  color: red;
-}
-
-.arguments {
-  margin-top: -0.4em;
-}
-.arguments .caption {
-  display: none;
-}
-
-.fields { padding-left: 1em; }
-
-.fields .caption { display: none; }
-
-.fields p { margin: 0 0; }
-
-/* this seems bulky to me
-.methods, .constructors {
-  background: #f8f8f8;
-  border: 1px solid #eee;
-}
-*/
-
-/* @end */
-
-/* @group Auxillary Pages */
-
-#mini {
-  margin: 0 auto;
-  padding: 0 1em 1em;
-}
-
-#mini > * {
-  font-size: 93%; /* 12pt */  
-}
-
-#mini #module-list .caption,
-#mini #module-header .caption {
-  font-size: 125%; /* 15pt */
-}
-
-#mini #interface h1,
-#mini #interface h2,
-#mini #interface h3,
-#mini #interface h4 {
-  font-size: 109%; /* 13pt */
-  margin: 1em 0 0;
-}
-
-#mini #interface .top,
-#mini #interface .src {
-  margin: 0;
-}
-
-#mini #module-list ul {
-  list-style: none;
-  margin: 0;
-}
-
-#alphabet ul {
-	list-style: none;
-	padding: 0;
-	margin: 0.5em 0 0;
-	text-align: center;
-}
-
-#alphabet li {
-	display: inline;
-	margin: 0 0.25em;
-}
-
-#alphabet a {
-	font-weight: bold;
-}
-
-#index .caption,
-#module-list .caption { font-size: 131%; /* 17pt */ }
-
-#index table {
-  margin-left: 2em;
-}
-
-#index .src {
-  font-weight: bold;
-}
-#index .alt {
-  font-size: 77%; /* 10pt */
-  font-style: italic;
-  padding-left: 2em;
-}
-
-#index td + td {
-  padding-left: 1em;
-}
-
-#module-list ul {
-  list-style: none;
-  margin: 0 0 0 2em;
-}
-
-#module-list li {
-  clear: right;
-}
-
-#module-list span.collapser,
-#module-list span.expander {
-  background-position: 0 0.3em;
-}
-
-#module-list .package {
-  float: right;
-}
-
-/* @end */
diff --git a/docs/plus.gif b/docs/plus.gif
deleted file mode 100644
Binary files a/docs/plus.gif and /dev/null differ
diff --git a/docs/synopsis.png b/docs/synopsis.png
deleted file mode 100644
Binary files a/docs/synopsis.png and /dev/null differ
diff --git a/example b/example
deleted file mode 100644
# file too large to diff: example
diff --git a/example.core b/example.core
deleted file mode 100644
# file too large to diff: example.core
diff --git a/example.hi b/example.hi
deleted file mode 100644
Binary files a/example.hi and /dev/null differ
diff --git a/example.o b/example.o
deleted file mode 100644
Binary files a/example.o and /dev/null differ
diff --git a/gendocs.sh~ b/gendocs.sh~
deleted file mode 100644
--- a/gendocs.sh~
+++ /dev/null
@@ -1,1 +0,0 @@
-haddock --html --hoogle -U -o docs Ketchup/Chunked.hs Ketchup/Httpd.hs Ketchup/Routing.hs Ketchup/Static.hs Ketchup/Utils.hs
