Lowerencode

lowerencode is an encoding method that encodes lowercase Latin characters (and space, period, exclamation point and question mark) into a string that's at least 1 character smaller. Note that only an idiot would think that you code encode one character into something smaller, so it encodes two characters at a time.

The JSON
Too lazy to script, so here is the JSON.

Work in progress: 5% done!!!1!!11111 {   '  ' : ' ',    ' a' : '.', ' b' : '!', ' c' : '?', ' d' : 'a', ' e' : 'b', ' f' : 'c', ' g' : 'd', ' h' : 'e', ' i' : 'f', ' j' : 'g', ' k' : 'h', ' l' : 'i', ' m' : 'j', ' n' : 'k', ' o' : 'l', ' p' : 'm', ' q' : 'n', ' r' : 'o', ' s' : 'p', ' t' : 'q', ' u' : 'r', ' v' : 's', ' w' : 't', ' x' : 'u', ' y' : 'v', ' z' : 'w', ' .' : 'x', ' !' : 'y', ' ?' : 'z', 'a ' : 'A', 'aa' : 'B', 'ab' : 'C', 'ac' : 'D', 'ad' : 'E', 'ae' : 'F', 'af' : 'G', 'ag' : 'H', 'ah' : 'I', 'ai' : 'J', 'aj' : 'K', 'ak' : 'L', 'al' : 'M', 'am' : 'N', 'an' : 'O', 'ao' : 'P', 'ap' : 'Q', 'aq' : 'R', 'ar' : 'S', 'as' : 'T', 'at' : 'U', 'au' : 'V', 'av' : 'W', 'aw' : 'X', 'ax' : 'Y', 'ay' : 'Z', 'az' : '0', 'a.' : '1', 'a!' : '2', 'a?' : '3', 'b ' : '4', 'ba' : '5', 'bb' : '6', 'bc' : '7', 'bd' : '8', 'be' : '9', 'bf' : '`', 'bg' : '~', 'bh' : '@', 'bi' : '#', 'bj' : '$', 'bk' : '%', 'bl' : '^', 'bm' : '&', 'bn' : '*', 'bo' : '(',   'bp' : ')', 'bq' : '-', 'br' : '_', 'bs' : '=', 'bt' : '+', 'bu' : '[', 'bv' : '{', 'bw' : ']', 'bx' : '}', 'by' : '\\', 'bz' : '|', 'b.' : ';', 'b!' : ':', 'b?' : '\'', 'c ' : '"',   'ca' : ',',    'cb' : '<',    'cc' : '.',    'cd' : '>',    'ce' : '\/',    'cf' : '^',    'cg' : '¡',    'ch' : '¢',    'ci' : '£',    'cj' : '¤',    'ck' : '¥',    'cl' : '¦',    'cm' : '§',    'cn' : '¨',    'co' : '©', // WIP // PROTIP: Use only Unicode 1.0 chars for maximum support // PROTIP: Wikibooks' Unicode Char Refs (I call them UCR)